Appium набирает все большую популярность среди инструментов для функционального тестирования мобильных приложений. Selenide - популярная Java обертка над Selenium Webdriver, позволяющая легко и непринужденно писать автоматизированные тесты для веб приложений. Можно ли интегрировать два инструмента, учитывая то, что appium использует свой клиент и свой протокол, несколько отличные от Selenium Webdriver? Что мы сможем выиграть в случае успеха? Давайте поговорим об этом!
1. Appium + Selenide: Cross-Platform
Mobile QA Automation. Is it possible
and what are the benefits?
Семенченко Антон
Issoft / Coherent Solutions
www.COMAQA.BY
www.DPI.Solutions
2. Поговорим…
• Несколько слов об Appium
• Что такое Selenide?
• Как можно “скрестить” Appium и Selenide
• Что из всего этого вышло?
3. Appium - …
• Appium — инструмент для автоматизации
мобильных приложений, использующий
Webdriver API.
• Appium – HTTP сервер, который создает и
управляет сессиями Webdriver.
4. App + oppium = ?
Webdriver
Адаптеры для
браузеров
Appium,
Selendroid,
IOSdriver
JSON Wire
Protocol
Mobile JSON Wire
Protocol
5. WebDriver API. Бонусы?
• Тесты на любом языке
программирования.
• Интеграция с любым тестовым
фреймворком.
• Selenium Grid для распределенного
запуска тестов.
• Тысячи девелоперов и QA специалистов
используют Webdriver и знакомы с его
моделью.
13. Что же такое Selenide?
Selenide — это прозрачная обёртка
вокруг Selenium WebDriver, не мешающая
опуститься до уровня голого Driver-а,
позволяющая быстро и просто использовать
все возможности Selenium при разработке
тестов, сосредоточившись на логике, а не
суете с браузером + целый ряд
дополнительных возможностей.
15. Что в этом коде нам не
нравится?
• Сложная инициализация
• А как же скриншоты?
• Объём кода
• Сложность кода
Раньше все эти «сложности» ложилось на
наши плечи!
36. Итого. Что мы получаем?
• Автоматическая синхронизация с
приложением
• Удобные ассерты и матчеры,
реализованные в should методах
• Удобный и краткий API синтаксис
• Статический доступ к driver intsance
37. Итого. Вынужденные “хаки”
• Хелперы для исключительно
“мобильных методов” MobileDriver и
MobileWebElement
• Хелперы для сложных взаимодествий
(actions)
38. Спасибо за внимание
Антон Семенченко
Опыт в IT более 12 лет
CSO, Co-founder, IT Consultant в
DPI.Solutions
QA Automation Activist в COMAQA.BY
C++ Architect, QA Automation
Department Manager, Project Manager,
Resource Manager, Process manager в
ISSoft / Coherent Solutions