Рынок устройств под экосистему Google очень разношерстный: у смартфонов и планшетов разные размеры, пользовательские интерфейсы и аппаратное обеспечение. Но, к счастью, существуют и разные тестовые платформы (фреймворки), которые несколько упрощают жизнь разработчикам.
Содержание
1) Robotium
Robotium — это фреймворк автоматизации тестирования Android-приложений с полной поддержкой как нативных, так и гибридных вариантов.
С помощью Robotium разработчики могут составлять тестовые сценарии для функционального, системного и поведенческого тестирования (тестирование по стратегии чёрного ящика).
2) Espresso
Espresso предназначен для разработчиков, которые рассматривают автоматизацию тестирования как составную часть жизненного цикла разработки системы. Для тех, кто знаком с кодовой базой, тестирование займет меньше времени. Программный интерфейс прост для понимания и в то же время его можно несколько видоизменить.
3) UIAutomator
Инструмент UIAutomator с удобным визуальным интерфейсом для исследования разметки и просмотра свойств компонентов UI, которые присутствуют на переднем плане устройства. С помощью UI Automator вы повысите точность своих тестов.
К примеру, можно выбрать UI-селектор, соответствующий какому-то специфическому свойству.
4) MonkeyRunner
Этот инструмент предоставляет API для написания программ, или эмуляторов, которые управляют Android-устройствами. С помощью MonkeyRunner вы можете написать программу в Python, которая бы инсталлировала приложение Android или блок тестовых программ, запускала бы их, отправляла кнопочные команды, делала скриншоты UI и сохраняла их на рабочем компьютере.
MonkeyRunner предназначен для тестирования приложений и устройств на функциональном уровне и модульного тестирования. Но этот инструмент можно использовать и для других целей.
5) Calabash
Calabash — это технология автоматизации тестирования для гибридных и нативных приложений в экосистемах Android и iOS.
Calabash — бесплатный проект с открытым исходным кодом, который разрабатывает Xamarin. Инструмент бесплатный, но все же у Xamarin есть ряд платных сервисов. Больше информации о Xamarin Test Cloud можно найти по ссылке xamarin.com/test-cloud.
6) Appium
Appium — Инструмент с открытым исходным кодом для автоматизации тестирования нативных и гибридных, мобильных и веб-приложений. Могут использоваться эмуляторы iOS и Android, а также фактические устройства (iOS, Android, Windows).
Инвестиция в протокол WebDriver означает, что вы делаете ставку на бесплатный открытый протокол для тестирования, который фактически стал стандартом. Если вы пользуетесь библиотекой Apple UIAutomation без Appium, тогда вы можете писать тесты только на JavaScript. А если у вас Google UiAutomator, вы пишете тесты на языке Java. Appium открывает возможности кроссплатформенной нативной автоматизации.
7) Ranorex
Ranorex — фреймворк автоматизации тестирования приложений для настольных компьютеров, мобильных и веб-приложений. Ranorex разработан компанией Ranorex GmbH. У этого инструмента нет собственного скриптового языка, вместо него используются стандартные языки программирования, такие как C# и VB.NET.
8) Testdroid
Это коммерческий продукт, который делает возможной продолжительную разработку и тестирование приложений под Android. Такая технология помогает сотням компаниям, которые разрабатывают мобильные приложения, мобильные- и веб-игры.
9) SeeTest
Еще один фреймворк автоматизации. Расширения кода доступны за счет других инструментов, тот же скрипт можно запускать на нескольких устройствах. SeeTest также поддерживает тестирование адаптивных веб-сайтов и пользовательского интерфейса.
10) TestFairy
При тестирования и разработке мобильных приложений в облаке никогда не знаешь, что именно было сделано, и, если возникает проблема, сложно сказать, что именно пошло не так со стороны клиента. TestFairy решает эту проблему — делает видеозапись теста: CPU, память, GPS, Network и многого другого.
Для тестирования приложений под Android доступно множество инструментов. Разработка все еще считается сложной задачей, поэтому автоматизация должна проводиться после тщательных исследований. Это поможет обойтись без лишних экспериментов. У каждого фреймворка свой уникальный функционал, и лучше использовать несколько платформ для тестирования.