Автоматизатор мобильных Pro [learnqa]
Навыки мобильной автоматизации.
Автоматизатор мобильных приложений — одна из наиболее высокооплачиваемых профессий. Пока еще на рынке дефицит кадров, и многие автоматизаторы стоят дороже программистов.
Этот курс дает все необходимые навыки для настройки полного стека автоматизации с нуля. Помимо этого он дает полный обзор инструментов, без которых автоматизатор не обходится ни дня:
Программа курса
16 недель обучения
Материалы по инструментам bash, Git и Docker доступны с первого дня занятий, так что их сразу можно будет применять для работы с автотестами.
Урок 1: Введение в Java и JUnit
Урок 2: Установка и настройка инструментов
Урок 3: Первые тесты на Android
Урок 4: Продвинутые тесты на Android
Урок 5: Паттерны PageObject, PageFactory и другие
Урок 6: Простые тесты для iOS
Урок 7: Сложные тесты для iOS
Урок 8: Maven и CI системы на примере Jenkins
Урок 9: Selenium и тесты для Web на примере Mobile Web приложения
Урок 10: Отчеты в Allure и сбор скриншотов
Программа Git
Программа Docker
Программа bash
Технические требования:
Для полного прохождения курса необходимы:
Цена: 35499 р
Навыки мобильной автоматизации.
Автоматизатор мобильных приложений — одна из наиболее высокооплачиваемых профессий. Пока еще на рынке дефицит кадров, и многие автоматизаторы стоят дороже программистов.
Этот курс дает все необходимые навыки для настройки полного стека автоматизации с нуля. Помимо этого он дает полный обзор инструментов, без которых автоматизатор не обходится ни дня:
- Git - для правильной организации работы и хранения кода тестов.
- bash - без знания командной строки невозможно настроить инфраструктуру автотестов правильно!
- Jenkins - для запуска ваших тестов в CI-системах. Docker - для запуска автотестов изолированно в контейнерах.
- Внимание - про Docker спрашивают на каждом собеседовании на позицию автоматизатора! Мы учим именно тому, что требуется в работе автоматизатора каждый день.
- Понимание того, как внедрить автоматизацию с нуля на проект
- Портфолио с примерами автотестов на своем GitHub аккаунте для резюме
- Готовый фреймворк с нужными библиотеками, чтобы сразу использовать его на боевых задачах
- Все необходимые знания и инструменты для развертывания автоматизации на проекте
- Комьюнити - мы запускаем этот курс уже более трех лет и выпустили очень много крутых специалистов на рынок. Многие выпускники наших ранних запусков сейчас работают в крупных компаниях и нанимают себе в команду выпускников этого же курса, так как уверены в его качестве.
- Работать с мобильными платформами – Android и iOS
- Работать с Mobile Web
- Выбирать правильные инструменты, подходящие именно под ваши задачи
- Настраивать среду автоматизации с нуля на различных операционных системах
- Создавать качественные отчеты с помощью Allure
- Писать качественные тесты, которые легко поддерживать и расширять
Программа курса
16 недель обучения
Материалы по инструментам bash, Git и Docker доступны с первого дня занятий, так что их сразу можно будет применять для работы с автотестами.
Урок 1: Введение в Java и JUnit
Урок 2: Установка и настройка инструментов
Урок 3: Первые тесты на Android
Урок 4: Продвинутые тесты на Android
Урок 5: Паттерны PageObject, PageFactory и другие
Урок 6: Простые тесты для iOS
Урок 7: Сложные тесты для iOS
Урок 8: Maven и CI системы на примере Jenkins
Урок 9: Selenium и тесты для Web на примере Mobile Web приложения
Урок 10: Отчеты в Allure и сбор скриншотов
Программа Git
Программа Docker
Программа bash
Урок 1: Введение в Java и JUnit
На этом уроке мы скачаем и установим IDE - программу для написания и запуска кода на Java. Создадим проект, в котором разберем основы языка программирования Java. После научимся подключать библиотеки на примере JUnit и напишем первые тесты. Научимся запускать их и писать отчеты об ошибках для них.
В конце этого урока у вас уже будет настроенный проект и несколько работающих тестов на JUnit, выложенных на вашем аккаунте на Github.
Урок 2: Установка и настройка инструментов
На этом уроке мы разберемся с тем, какие инструменты используются для автоматизации тестирования мобильных приложений. Установим эти инструменты на Windows и MacOS. Затем в IDE создадим новый проект для автотестов и напишем первый автотест для Android-приложения.
В конце этого урока на вашем Github-аккаунте появится первый работающий тест на Android. А на ПК будут установлены все необходимые программы для создания и запуска новых тестов.
Урок 3: Первые тесты на Android
На этом уроке мы напишем несколько новых тестов на Android, научимся составлять локаторы для элементов на языке XPath и по ID, а также используем основные методы для взаимодействия с UI нашего приложения. Затем разберем типы ожиданий.
В конце этого урока у Вас будет несколько новых тестов, которые активно взаимодействуют с UI - умеют создавать ожидания для стабильной работы тестов, кликать и тапать по элементам и заполнять формы.
Урок 4: Продвинутые тесты на Android
На этом уроке разберемся с более сложными методами написания тестов и взаимодействия с UI нашего приложения. Напишем тесты на свайп элементов во все стороны, создадим новые ассерты (проверки), дополняющие методы JUnit, научимся правильно подготавливать эмулятор и приложение перед стартом теста.
В конце этого урока в вашем репозитории станет существенно больше тестов, способных совершать более комплексные проверки работоспособности приложения.
Урок 5: Паттерны PageObject, PageFactory и другие
На этом уроке мы изучим самые популярные паттерны проектирования автотестов. Мы создадим PageObject классы для нашего приложения, научимся применять на практике паттерн "фабрика" и вынесем подготовку приложения и запуск эмулятора в конфиг-классы TestBase и TestCore.
В конце этого урока у вас на Github будут выложены тесты, прошедшие тщательный рефакторинг и созданные по всем правилам корпоративной разработки. Эти тесты уже можно будет приложить к резюме или показать на собеседовании. Вы будете понимать каждую строчку, написанную в вашем коде, и сможете грамотно рассказать о своем проекте работодателю.
Урок 6: Простые тесты для iOS
На этом уроке мы начнем писать тесты для iOS-приложения. Для этого мы обновим XCode до последней версии, настроим симуляторы и запустим на них тестовое приложение.
Внимание, для этого урока обязательно нужен MacBook. В конце этого урока у нас будут базовые тесты для iOS-приложения.
Урок 7: Сложные тесты для iOS
На этом уроке мы "научим" тесты для Android-приложения работать также для iOS-приложения. Для этого создадим новый конфиг-класс Platform и научимся работать с переменными окружения.
Внимание, для этого урока обязательно нужен MacBook.
В конце этого урока у вас на Github уже будет фреймворк, разработанный вами, на котором можно разрабатывать тесты, одновременно покрывающие и Android, и iOS-приложение.
Урок 8: Maven и CI системы на примере Jenkins
На этом уроке мы научимся работать с версиями подключенных библиотек с помощью Maven. Затем сделаем так, чтобы Appium и эмулятор могли запускаться из консоли, и разработаем bash-скрипт для автоматического запуска всех автотестов.
После мы займемся установкой Jenkins и запуском наших тестов в нем с помощью разработанного bash-скрипта.
В конце этого занятия у вас уже будут сьюты (наборы) тестов, которые будут запускаться из CI-системы Jenkins автоматически. Вы научитесь настраивать билды и сможете применить это в работе.
Урок 9: Selenium и тесты для Web на примере Mobile Web приложения
На этом уроке мы поработаем с автоматизацией Web-приложений и Selenium. Мы научим наши тесты, которые мы писали для Android и iOS, запускаться еще и для мобильной веб-версии приложения.
В конце этого урока у вас будет фреймворк, на котором можно разрабатывать тесты любой сложности, работающие сразу для Web, Android и iOS-приложений.
Урок 10: Отчеты в Allure и сбор скриншотов
На этом уроке мы создадим удобные и информативные отчеты для наших тестов с помощью Allure-2. Мы научимся подключать его через Maven, познакомимся с основными возможностями этого инструмента и создадим свои отчеты для тестов.
В конце этого урока тесты научатся собирать скриншоты и другие ассеты во время прохождения, автоматически генерировать описаний окружения для отчета и многое другое.
Программа Git
Введение
Вступление
Создание, просмотр и удаление файлов и папок
На этом уроке мы скачаем и установим IDE - программу для написания и запуска кода на Java. Создадим проект, в котором разберем основы языка программирования Java. После научимся подключать библиотеки на примере JUnit и напишем первые тесты. Научимся запускать их и писать отчеты об ошибках для них.
В конце этого урока у вас уже будет настроенный проект и несколько работающих тестов на JUnit, выложенных на вашем аккаунте на Github.
- Установка инструментов разработки IDE
- Создание проекта в IntelliJ IDEA
- Основы работы с Java - переменные и типы данных, функции
- Основы работы с Java - классы, методы класса и объекты
- Объектно-ориентированное программирование - наследование, инкапсуляция, полиморфизм
- Модификаторы доступа в Java - public, private, protected
- Поля класса - переменные внутри классов
- Статические поля и методы - для чего нужны и как использовать
- Азы работы с тестовым фреймворком JUnit
- Создание простых тестов на JUnit
- Статусы теста - success, skip, failed, error
- Аннотации и описания к тестам
- Проверки в тестах - assertTrue/assertFalse, assertEquals и так далее
- Git и Github - выкладываем наши тесты в свой репозиторий
Урок 2: Установка и настройка инструментов
На этом уроке мы разберемся с тем, какие инструменты используются для автоматизации тестирования мобильных приложений. Установим эти инструменты на Windows и MacOS. Затем в IDE создадим новый проект для автотестов и напишем первый автотест для Android-приложения.
В конце этого урока на вашем Github-аккаунте появится первый работающий тест на Android. А на ПК будут установлены все необходимые программы для создания и запуска новых тестов.
- Обзор инструментов мобильной автоматизации
- Программное обеспечение для тренинга
- Установка инструментов (Windows)
- Установка инструментов (MacOS)
- UIAutomatorViewer и Appium Viewer
- Настойка тестового приложения
- Packages and Capabilities
- Создание нового проекта в IDE, подключение библиотек
- Запуск первого теста на Android
Урок 3: Первые тесты на Android
На этом уроке мы напишем несколько новых тестов на Android, научимся составлять локаторы для элементов на языке XPath и по ID, а также используем основные методы для взаимодействия с UI нашего приложения. Затем разберем типы ожиданий.
В конце этого урока у Вас будет несколько новых тестов, которые активно взаимодействуют с UI - умеют создавать ожидания для стабильной работы тестов, кликать и тапать по элементам и заполнять формы.
- Локаторы, виды локаторов - поиск по ID и XPath
- Простые методы: find_element, click, sendKeys
- Ожидания (wait) - появление элемента, видимость элементов
- Дополнительные методы проверок - проверка отсутствия элемента
Урок 4: Продвинутые тесты на Android
На этом уроке разберемся с более сложными методами написания тестов и взаимодействия с UI нашего приложения. Напишем тесты на свайп элементов во все стороны, создадим новые ассерты (проверки), дополняющие методы JUnit, научимся правильно подготавливать эмулятор и приложение перед стартом теста.
В конце этого урока в вашем репозитории станет существенно больше тестов, способных совершать более комплексные проверки работоспособности приложения.
- Типы свайпов и организация удобных методов для них
- Ассерты - пишем свои методы для проверки состояния приложения
- Повороты экрана и правильная подготовка эмулятора перед стартом тестов
- Background apps - тестируем работоспособность приложения в фоновом режиме
Урок 5: Паттерны PageObject, PageFactory и другие
На этом уроке мы изучим самые популярные паттерны проектирования автотестов. Мы создадим PageObject классы для нашего приложения, научимся применять на практике паттерн "фабрика" и вынесем подготовку приложения и запуск эмулятора в конфиг-классы TestBase и TestCore.
В конце этого урока у вас на Github будут выложены тесты, прошедшие тщательный рефакторинг и созданные по всем правилам корпоративной разработки. Эти тесты уже можно будет приложить к резюме или показать на собеседовании. Вы будете понимать каждую строчку, написанную в вашем коде, и сможете грамотно рассказать о своем проекте работодателю.
- Page object model для организации тестов
- Создание фабрики PageObject для кроссплатформенных тестов
- Разбор других паттернов для разработки тестов
- Подготовка окружения для тестов - класс TestBase и TestCore
Урок 6: Простые тесты для iOS
На этом уроке мы начнем писать тесты для iOS-приложения. Для этого мы обновим XCode до последней версии, настроим симуляторы и запустим на них тестовое приложение.
Внимание, для этого урока обязательно нужен MacBook. В конце этого урока у нас будут базовые тесты для iOS-приложения.
- Установка XCode и iOS-симуляторов
- Запуск приложения на iOS-симуляторе
- Appium Viewer для iOS - поиск локаторов
- Подключение iOS-платформы к тестам
- Базовые тесты для iOS-приложение
Урок 7: Сложные тесты для iOS
На этом уроке мы "научим" тесты для Android-приложения работать также для iOS-приложения. Для этого создадим новый конфиг-класс Platform и научимся работать с переменными окружения.
Внимание, для этого урока обязательно нужен MacBook.
В конце этого урока у вас на Github уже будет фреймворк, разработанный вами, на котором можно разрабатывать тесты, одновременно покрывающие и Android, и iOS-приложение.
- Разработка кроссплатформенных тестов для iOS и Android
- Работа с переменными окружения
- Создание конфиг-класса Platform
- Универсальные методы для swipe
- Skip тестов для платформ
Урок 8: Maven и CI системы на примере Jenkins
На этом уроке мы научимся работать с версиями подключенных библиотек с помощью Maven. Затем сделаем так, чтобы Appium и эмулятор могли запускаться из консоли, и разработаем bash-скрипт для автоматического запуска всех автотестов.
После мы займемся установкой Jenkins и запуском наших тестов в нем с помощью разработанного bash-скрипта.
В конце этого занятия у вас уже будут сьюты (наборы) тестов, которые будут запускаться из CI-системы Jenkins автоматически. Вы научитесь настраивать билды и сможете применить это в работе.
- Запуск эмулятора из командной строки
- Запуск Appium Server из командной строки
- Установка Maven
- Импорт проекта в IDEA
- Установка Jenkins
- Разработка bash-скриптов для Jenkins
- Запуск тестов на iOS в Jenkins
- Запуск тестов на Android в Jenkins
- Добавление тестов в suite
Урок 9: Selenium и тесты для Web на примере Mobile Web приложения
На этом уроке мы поработаем с автоматизацией Web-приложений и Selenium. Мы научим наши тесты, которые мы писали для Android и iOS, запускаться еще и для мобильной веб-версии приложения.
В конце этого урока у вас будет фреймворк, на котором можно разрабатывать тесты любой сложности, работающие сразу для Web, Android и iOS-приложений.
- Запуск Selenium и Chrome Driver
- Подготовка capabilities для Mobile Web
- Создание базовых классов для Mobile Web приложения
- Работа с инспектором Chrome DevTools
- Подготовка тестов к запуску в Jenkins
Урок 10: Отчеты в Allure и сбор скриншотов
На этом уроке мы создадим удобные и информативные отчеты для наших тестов с помощью Allure-2. Мы научимся подключать его через Maven, познакомимся с основными возможностями этого инструмента и создадим свои отчеты для тестов.
В конце этого урока тесты научатся собирать скриншоты и другие ассеты во время прохождения, автоматически генерировать описаний окружения для отчета и многое другое.
- Установим утилиту allure
- Добавим Allure Framework с помощью Maven
- Изучим теги @Step, @Description, @Attachment и другие
- Научимся собирать скриншоты во время прохождения
Программа Git
Введение
- Что такое система контроля версий
- Обзор систем контроля версий
- Почему Git
- Регистрация
- Обзор интерфейса
- Создание собственного репозитория
- Установка Git на локальный компьютер
- git clone
- git status
- git diff
- git log
- git show
- git blame
- git fetch
- git pull
- git commit
- git push
- git merge
- git stash
- git pop
- git branch
- git branch delete
- git checkout
- git add
- git reset
- git reset --soft
- git reset --hard
- git reset HEAD
- git alias
- user
- color
- .gitignore
- решение конфликта мержа ветки
- решение конфликта буфера
- Разбор типовых flow работы с Git
- Регистрация на GitLab
- Регистрация на BitBucket
Вступление
- Что такое Docker
- Отличие Docker от Virtual Machine
- Для чего используют Docker
- Почему для Windows и MacOS все не так?
- Установка Docker на MacOS
- Установка Docker на Windows
- Установка Docker на Linux
- Версия Docker
- Помощник Docker
- Что такое контейнер
- Как запустить контейнер
- Параметры команды run
- Запускаем контейнер с Ubuntu
- Detached контейнеры
- Attach запущенного контейнера
- Работа с несколькими контейнерами одновременно
- Работа с файлами внутри контейнера
- Что такое том
- Создаем, подключаем и удаляем том
- Mount bind - подключение директории хост-системы
- Mount тома
- Пример запуска программы на Python с mount
- Readonly mode
- Тестирование программы на разных версиях языка программирования на примере Python
- Что такое образ
- Качаем образ
- Выбираем версии
- Регистрируемся на Docker Hub
- Авторизация Docker из терминала
- Создаем свой первый образ
- Заливаем свой образ на Docker Hub
- Запускаем Selenium Server через Docker
- Запускаем Selenium Server через Docker правильно
- Создаем Selenium-сессия на запущенном контейнере
- Разбираемся с настройками docker network
- Разбираемся с тем, как устроены автотесты на примере Selenium-тестов
- Скачиваем исходники Selenium-тестов на Java
- Настраиваем запуск тестов в контейнере на примере Java и Maven
- Связываем контейнер Selenium и контейнер с запущенными тестами
- Работа с артефактами автотестов из контейнера
- Что такое Dockerfile
- Основы синтаксиса
- Пример запуска простой программы на Python
- Пример создания образа с Selenium-тестами
- Что такое Docker compose
- Пример создания сервиса на примере Python-программы
- Запуск простого сервиса
- Запуск нескольких сервисов на примере Maven-образа с Selenium-тестами и образе Selenium Server
- Docker Swarm - для чего нужен и когда используется
- Kubernetes - для чего нужен и когда используется
Создание, просмотр и удаление файлов и папок
- pwd
- cd
- ls
- mkdir
- touch
- mv
- cp
- rm
- vi
- nano
- cat
- find
- grep
- |
- >
- >>
- ps
- top
- kill
- ping
- scp
- curl
- ssh
- sed
- xargs
- awk
- alias
- bashrc
- source
- PS[1-2] и другие переменные окружения
Технические требования:
Для полного прохождения курса необходимы:
- Windows 10 ИЛИ Ubuntu 16.04+ (подойдет только для работы с тестами на Android)
- Mac OS Catalina или выше (подойдет и для Android, и для iOS)
- Процессор Intel i-серии (i3, i5, i7)
- Минимум 8 GB RAM
- 10 GB на жёстком диске
- Разрешение экрана минимум 1280 x 800
Цена: 35499 р
https://www.learnqa.ru/automation_pro