Учебники

8) Appium Интервью Q & A

1) Объясните, что такое Аппиум?

Appium — это свободно распространяемая среда тестирования пользовательского интерфейса мобильного приложения с открытым исходным кодом.

2) Перечислите способности Appium?

Аппиевые способности

  • Тестовая сеть
  • Обеспечивает кроссплатформенность для нативной и гибридной мобильной автоматизации.
  • Поддержка протокола JSON провод
  • Не требует перекомпиляции приложения
  • Поддержка тестирования автоматизации на физическом устройстве, а также на подобном или эмуляторе
  • Не зависит от мобильного устройства

3) Перечислите предварительные условия для использования APPIUM?

Необходимым условием для использования APPIUM является

  • ANDROID SDK
  • JDK
  • TestNG
  • Затмение
  • Selenium Server JAR
  • Библиотека привязки языка Webdriver
  • APPIUM для Windows
  • Информация об APK-приложении в Google Play
  • JS

4) Перечислите ограничения использования Appium?

  • Appium не поддерживает тестирование версии Android ниже 4.2
  • Ограниченная поддержка тестирования гибридных приложений. Например, невозможно проверить действие переключения приложения с веб-приложения на нативное и наоборот.
  • Нет поддержки для запуска Appium Inspector в Microsoft Windows

5) Объясните, как найти элемент DOM или xPath в мобильном приложении?

Чтобы найти элемент DOM, используйте «UIAutomateviewer», чтобы найти элемент DOM для приложения Android.

6) Объясните концепцию дизайна Appium?

  • Appium — это «HTTP-сервер», написанный на платформе Node.js, который управляет сессиями iOS и Android, используя проводной протокол WebSON JSON. Следовательно, перед инициализацией сервера Appium Node.js должен быть предварительно установлен в системе.
  • Когда Appium загружен и установлен, на нашем компьютере настраивается сервер, который предоставляет REST API.
  • Он получает запрос на подключение и команду от клиента и выполняет эту команду на мобильных устройствах (Android / iOS)
  • Он отвечает обратно HTTP-ответами. Опять же, чтобы выполнить этот запрос, он использует платформы автоматизации мобильных тестов для управления пользовательским интерфейсом приложений. Рамки как
    • Инструменты Apple для iOS (инструменты доступны только в Xcode 3.0 или более поздней версии с OS X v10.5 и более поздней версии)
    • Google UIAutomator для Android API уровня 16 или выше
    • Selendroid для Android API уровня 15 или ниже

7) Какой язык поддерживает Appium?

Appium поддерживает любые языки, поддерживающие HTTP-запросы, такие как Java, JavaScript с Node.js, Python, Ruby, PHP, Perl и т. Д.

8) Объясните плюсы и минусы Аппиума?

Плюсы :

  • Для программиста, независимо от платформы, он автоматизирует (Android или iOS) все сложности останутся под одним сервером Appium
  • Это открывает двери для кросс-платформенного мобильного тестирования, что означает, что один и тот же тест будет работать на нескольких платформах.
  • Appium не требует дополнительных компонентов в вашем приложении, чтобы сделать его удобным для автоматизации
  • Может автоматизировать гибридные, веб и мобильные приложения.

Минусы :

  • Запуск скриптов на нескольких симуляторах iOS одновременно с Appium
  • Он использует UIAutomator для Android Automation, который поддерживает только платформу Android SDK, API 16 или выше, а для поддержки более старых API они использовали другую библиотеку с открытым исходным кодом под названием Selendroid.

9) Объясните, что такое АППИУМ ИНСПЕКТОР?

Как и в средстве записи и воспроизведения Selenium IDE, в Appium есть «Инспектор» для записи и воспроизведения. Он записывает и воспроизводит поведение собственного приложения, проверяя DOM и генерируя тестовые сценарии на любом желаемом языке. Однако Appium Inspector не поддерживает Windows и использует программу просмотра UIAutomator в своем варианте.

10) Укажите, каковы основные требования для написания тестов Appium?

Для написания тестов Appium вам нужно,

  • Driver Client : Appium управляет мобильными приложениями, как будто это пользователь. Используя клиентскую библиотеку, вы пишете свои тесты Appium, которые оборачивают ваши шаги теста и отправляют на сервер Appium по HTTP.
  • Сеанс Appium : Вы должны сначала инициализировать сеанс, так как такой тест Appium происходит в сеансе. Как только автоматизация сделана для одного сеанса, она может быть завершена и ждать другого сеанса
  • Желаемые возможности : чтобы инициализировать сеанс Appium, вам нужно определить определенные параметры, известные как «желаемые возможности», такие как PlatformName, PlatformVersion, Device Name и так далее. Он определяет тип автоматизации, который требуется от сервера Appium.
  • Команды драйвера : вы можете написать свои тестовые шаги, используя большой и выразительный словарь команд.

11) Укажите, с какими возможными ошибками можно столкнуться при использовании Appium ?

Возможные ошибки, с которыми можно столкнуться в Appium, включают

  • Ошибка 1: следующие требуемые возможности необходимы, но не предоставлены: Имя устройства, имя_платформы
  • Ошибка 2: не удалось найти adb. Установите переменную среды ANDROID_HOME, указав путь к корневому каталогу Android SDK.
  • Ошибка 3: openqa.selenium.SessionNotCreatedException: не удалось создать новый сеанс
  • Ошибка 4: Как найти элемент DOM или XPath в мобильном приложении?

12) Вам нужен сервер для запуска тестов на Appium ?

Нет, вам не нужен сервер для запуска тестов на Appium. Appium обеспечивает двухуровневую архитектуру, в которой тестовая машина подключается к тестовому серверу, на котором запущен Appium и автоматизирует все это. Вы можете запустить Appium на той же машине, где проходит ваш тест.

13) Можно ли взаимодействовать с моими приложениями, используя Javascript, когда я тестирую с Appium?

Да, можно взаимодействовать с приложением при использовании Javascript. Когда команды запускаются в Appium, сервер отправит скрипт вашему приложению, обернутый в анонимную функцию для выполнения.

14) Укажите, какие наиболее сложные сценарии можно протестировать с помощью Appium?

Самый сложный сценарий для тестирования с помощью Appium — обмен данными.

15) Могу ли я использовать свои тесты в многопоточной среде при использовании Appium?

Да, вы можете запустить тест в многопоточной среде, но вы должны убедиться, что на одном сервере Appium одновременно выполняется не более одного теста.

16) В Android, вам нужен .apk приложения для автоматизации с помощью Appium, или вам нужно приложение в моей рабочей области?

В Android вам нужен только файл .apk для автоматизации с помощью Appium.

17) Объясните, что такое мастер пакетов Appium? Как создать пакет?

Appium package master — это набор инструментов для управления и создания пакетов appium. Например, для создания пакета вы можете использовать код

# используя es7 / babe1

Gulp create-package –n <имя-пакета>

#regular ES5

Gulp create-package — nobabe1 –n <имя-пакета>

Пакет будет сгенерирован в out / <имя-пакета>

18) Объясните, как тестовые среды поддерживаются Appium?

Appium не поддерживает тестовые фреймворки, поэтому их не нужно поддерживать. Appium можно использовать с любыми желаемыми фреймворками.