Автоматизация процессов тестирования позволяет существенным образом улучшить качество мобильного ПО, что, в свою очередь, ускоряет процесс проверки продукта, повышает общую производительность и помогает удовлетворить потребности клиента.
Любую автоматизацию тестирования мобильного ПО лучше всего проводить в ситуациях, когда:
- Тестируется комплексное приложение;
- Работа с тест-кейсами занимает очень много времени;
- Выполняется нагрузочное тестирование;
- Есть необходимость в сокращении объемов тестирования.
В идеале, QA-инженеры могут «передавать» трудоемкие процедуры тестирования современным инструментам, а не выполнять их самостоятельно, используя при этом недоступные типы тестов.
На сегодняшний день, в сфере услуг по автоматизации тестирования существует масса разнопланового программного обеспечения, которое может пригодиться в процессе разработки и тестирования мобильных продуктов.
Далее рассмотрим парочку из них более детально.
Программное обеспечение UI Automator
https://developer.android.com/training/testing/ui-automator
Создан корпорацией Google и отличается первоклассной технической документацией.
Данный инструмент совершенно не требует внедрения своего программного кода в тестируемый продукт и позволяет использовать по максимуму все современные возможности операционной системы Андроид.
ПО UI Automator позволяет находить элементы в тестируемом приложении и демонстрирует локаторы элементов, где locator — это особая строка, которая оригинально идентифицирует выбранный UI-элемент.
К слову, базовое предназначение данного инструмента — тестирование «черного ящика».
Продукт Espresso
Хороший инструмент и в чём-то более прост и понятен, если сравнивать его с вышеописанным UI Automator.
А всё из-за того, что графический Espresso может добавлять методы для проверок внутри автотестов.
Естественно, оперировать двумя и более инструментами лучше, чем применять только одно ПО, так как UI Automator/Espresso являются частью одной библиотеки и технически дополняют друг друга.
Ключевая особенность данного ПО в том, что в течение одного теста приложение запускается только один раз.
Для процессов автоматизации это будет хорошим таким плюсом.
Espresso напрямую взаимодействует с программным кодом и содержит прямой доступ к подключенным ресурсам.
Это позволяет пользователю внедрять собственный код в ПО — на практике это будет очень удобно.
Продукты Selendroid/Robotium
Данные программы были созданы корпорацией Google и остаются актуальными до сих пор.
Самое любопытное, что они «не запрашивают» доступ к исходному программному коду и могут обращаться только к одному определенному проекту.
Кроме этого, Selendroid и Robotium функционируют на устройствах и некоторых эмуляторах.
Также стоит отметить тот факт, что Selendroid активно использует наиболее распространенные языки программирования, в то время как для программы Robotium все тесты создаются исключительно с помощью языка Java.
Appium
https://github.com/appium/appium
Это инструмент предназначается для автоматизации процессов проверки мобильного ПО, содержащий открытый исходный код, который, в свою очередь, являет собой специальный веб-сервер, созданный на базе Node.js.
Базовый принцип состоит в том, что у пользователя нет острой необходимости в постоянной компиляции проектов или процессов редактирования автоматизации тестирования.
Дополнительным плюсом является возможность использовать разнообразные современные языки программирования и некоторые фреймворки.
Некоторые преимущества:
- Основывается на базе протокола WebDriver, с помощью которого можно проверять разноплановые мобильные сайты;
- Хорошая поддержка сообщества на платформе GitHub;
- 100% кросплатформенность.
[highlight dark=”no”]Отдельно необходимо отметить, что некоторым специалистам с определенным набором навыков по тестированию веб-приложений будет значительно проще перейти на процессы автоматизации тестирования ПО именно с помощью продукта Appium.[/highlight]
Выводы
Непосредственно перед тем, как начинать выполнять тестирование того или иного мобильного программного обеспечения, необходимо ознакомиться и подобрать наиболее подходящее ПО, которое будет «в состоянии» выполнить все необходимые работы.
Каждый из описанных программных компонентов в статье имеет как свои преимущества, так и некоторые недостатки.
Программы для тестирования мобильного ПО развиваются стремительным образом, поэтому важно всегда сверять актуальную версию документации и поддерживать связь с сообществами.
0 Comments