Почему Appium?

Сегодня я буду экстремистом и разделю все фреймворки для тестирования (да и вообще любые) на две группы. В первой группе фреймворки заточены под решение небольшой и четко определённой задачи. Например, Allure решает задачу репортинга, а maven-surefire-plugin - задачу запуска юнит-тестов. Во второй группе собрались инструменты, решающие определённый класс задач. Например, Serenity (в девичестве Thucydides) решает задачи написания, запуска и анализа функциональных тестов для веб-приложений, а Calabash - делает то же самое, но для мобильных приложений.

Первые позволяют строить гибкую архитектуру, но бесполезны сами по себе. Вторые предлагают работающее решение “из коробки”, которое (обычно) тяжело или невозможно кастомизировать. В зависимости от контектса плюсы одних превращаются в минусы и наоборот.

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

  • пиши на любом языке
  • используй любой тестовый фреймворк
  • подключайся в selenium-grid и выполняй тесты параллельно

Этих трёх аргументов лично мне достаточно.

comments powered by Disqus