Увеличьте свои возможности тестирования с помощью реальных устройств iOS и Android

Обзор

AWS Device Farm - это удобный метод тестирования ваших приложений без хлопот в реальном времени или тестирования вашего приложения на различных устройствах с командой тестирования. AWS предоставляет это прекрасное средство для выполнения нескольких этапов тестирования без необходимости или причин для самостоятельного управления тестированием. Ниже я попытался описать реализацию AWS Device Farm и требования к тестированию мобильных приложений, собрав информацию из различных источников.

AWS Device Farm создает проекты, которые являются контейнерами для одного или нескольких тестовых запусков устройства. То есть, если вы хотите запустить тестовый сценарий на нескольких устройствах, вы можете создать проект, который включает тестовые прогоны, которые, в свою очередь, включают тестовые скрипты, которые запускаются на нескольких устройствах одновременно.

Это включает:

  • Автоматизированное тестирование
  • Тестирование удаленного доступа

Для этого вам понадобятся три вещи:

  • фреймворк приложения
  • тесты, такие как XCTest для iOS и Android (AWS поддерживает несколько типов тестов, таких как Fuzz, UI Automation, Appium Junit, Python и т. д.)
  • устройства для их запуска

С помощью AWS Device Farm вы можете добиться того, чего не сможете достичь с помощью собственного типа тестирования. Как вы увидите, AWS Device Farm поможет вашему SDK.

Цели тестирования, которые можно достичь

Тестирование нескольких местоположений в режиме реального времени. Вы можете выполнять тестирование нескольких местоположений на нескольких устройствах.

Изменение сетевого профиля. Вы можете протестировать платформу через соединение с потерями, плохое соединение (используя предварительно заполненные сетевые профили), 3G с потерями, хороший Wi-Fi, плохой Wi-Fi, или создав свой собственный сетевой профиль.

Вы можете создать свой собственный сетевой профиль и соответствующим образом отредактировать его.

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

Результаты тестирования для нескольких устройств. Просмотрите несколько тестов, запущенных одновременно на разных устройствах, и сравните устройства в режиме реального времени.

Ниже у одного устройства ошибок нет, а у трех они есть.

Множественные ошибки на нескольких устройствах. Просматривайте множественные ошибки на нескольких устройствах и сравнивайте ошибки на этих устройствах одновременно.

Просмотр журналов. Доступно несколько типов журналов устройства.

  • Жгуты проводов

  • Журналы устройства

  • Журналы испытаний

Параллельное выполнение на нескольких устройствах. Просмотрите несколько тестов, запущенных одновременно на разных устройствах.

Интеграция CI. Подключите ферму устройств к CI с помощью плагина в трехэтапном процессе.

  1. Создайте роль в учетных записях AWS, роль для ферм устройств AWS и предоставьте доступ и секретный ключ.
  2. Создайте проект в GitHub Actions, настройте его, соберите тест и запустите тест на Device Farm.
  3. Проверьте результат теста с журналами для каждого устройства, как показано на снимках экрана выше.

Вехи, которые можно преодолеть

  • Хорошая производительность: показывает высокую и низкую производительность устройств.

  • Построить сумматор
  • Связь с DevOps
  • Более быстрая отладка и устранение ошибок от издателей
  • Подробная отчетность для издателей и команды SDK