Skip to content

vitaly-kiselev-qa/MobileAutotestFramework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mobile Autotest framework

Используемый стек:

Быстрая настройка

PART 1: ПОДГОТОВКА ОКРУЖЕНИЯ

  1. Установить Appium desktop https://github.com/appium/appium-desktop/releases/
  2. Установить Android Studio https://developer.android.com/studio (Нам нужны adb и sdk. Sdk так же можно установить из под IDE, главное - найти путь до него в системе)
  3. Установить Maven https://maven.apache.org/download.cgi (Binary zip archive)
  4. Прописать переменные среды:
    • Открыть: Этот компьютер -> Свойства -> Дополнительные параметры системы -> Переменные среды
    • В системные переменные добавить ANDROID_HOME и прописать путь до SDK (Пример: C:\Users\user\AppData\Local\Android\Sdk)
    • В системные переменные добавить JAVA_HOME и прописать путь до JDK (Пример: C:\Program Files\Java\jdk1.8.0_241)
    • В системные переменные добавить M2_HOME и прописать путь до папки с распакованным Maven (Пример: C:\Program Files\Java\jdk1.8.0_241)
    • В системных переменных открыть Path и добавить следующие строки:
      • %ANDROID_HOME%
      • %ANDROID_HOME%\tools
      • %ANDROID_HOME%\tools\bin
      • %ANDROID_HOME%\platform-tools
      • %JAVA_HOME%
      • %M2_HOME%
      • %M2_HOME%\bin
  5. Проверить что adb работает: для этого открыть cmd и выполнить команду "adb" - должно появиться много текста
  6. Проверить что maven работает: для этого открыть cmd и выполнить команду "mvn -version"
  7. Запустить Appium server
  8. Проверить что Appium видит переменные среды: После запуска приложения не запуская сам сервер нажать на Adviced, затем на Edit configurations. В открывшемся окне должны быть прописаны правильные пути ANDROID_HOME и JAVA_HOME
  9. Если будете запускать тесты на реальном девайсе, то просто подключите его проводом USB к пк, если нужен эмулятор, то:
    1. Запустить Android Studio
    2. Открыть AVD manager
    3. Создать любой эмулятор с простым названием (Пример спеков: Pixel 3a x86 + play market)
    4. Закрыть Android studio
    5. Открыть cmd и выполнить команду emulator -avd pixel_api29 (Где pixel_api29 - название ранее созданного эмулятора)
    6. Запускать эмулятор можно из Android studio или командой cmd (Сама Android Studio для работы эмулятора не нужна)

PART 2: Настройка конфига, запуск тестов

  1. Запустить Appium server
  2. Нажать на Start Inspector session (Кнопка с лупой)
  3. (Android) Создать и сохранить новый Desired capabilites со следующими полями:
    • "platformName": "Android",
    • "deviceName": "Android",
    • "platformVersion": "<Версия Android тестового девайса>",
    • "appPackage": "<Пакет тестируемого приложения>", (Можно узнать установив приложение Package Name из Play market)
    • "appActivity": "<MainActivity тестируемого приложения>" (Можно узнать установив приложение Package Name из Play market)
  4. (Android) Установить тестовое приложение на девайс и запустить сессию (Если все сделано правильно, то должно запуститься приложение, в Appium откроется интерфейс инспектора элементов. Здесь можно смотреть xpath и др. параметры элементов UI для тестирования)
  5. (Android) Завершить сессию и закрыть инспектор
  6. Скачать фреймворк, запустить IDE и открыть \AutottestsSample\src\test\java\setup\Config.java
  7. (Android) Заполнить поля:
    • ANDROID_APP_PACKAGE (Пакет тестируемого приложения)
    • ANDROID_APP_MAIN_ACTIVITY (MainActivity тестируемого приложения)
    • PLATFORM_VERSION (Версия ОС тестового девайса, по умолчанию - 10.0)
    • APPIUM_VERSION (Версия Appium desktop)
    • PLATFORM (Тестируемая платформа. Прим.: Android_native)
  8. (Android) apk тестового приложения переименовать в test.apk и кинуть на Рабочий стол (По умолчанию фрейм будет запускать test.apk с рабочего стола Пользователя
  9. Запустить файл src/test/java/features/RunTest.java

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published