Мы строим комплексное приложение для Android, состоящее из множества экранов и рабочих процессов, распространенных во многих видах деятельности. Наши рабочие процессы похожи на то, что вы можете увидеть на банкоматной машине Банка, например, есть Activity
для входа в этот переход в главное меню Activity
, которое может перейти на другие действия, основанные на выборе пользователя.Как вы тестируете приложение Android в нескольких действиях?
Поскольку у нас так много рабочих процессов, нам нужно создать автоматизированные тесты, которые охватывают несколько видов деятельности, чтобы мы могли протестировать рабочий процесс из конца в конец. Например, используя пример ATM, мы хотели бы ввести действительный PIN-код, убедиться, что он отправляет нас в главное меню, выберете наличные деньги, убедитесь, что мы находимся на экране наличных денег и т. Д. И т. Д., И, в конечном итоге, вернуться в главное меню или выйти из системы.
Мы поиграли с тестовым API, которые поставляются с Android (например, ActivityInstrumentationTestCase2
), а также с Positron, но и не кажется, способно испытывать за пределами одного Activity
, и в то время как мы можем найти применение в этих инструментах для некоторые единицы тестирования, они не будут соответствовать нашим требованиям для тестирования сценариев, которые пересекают несколько видов деятельности.
Мы открыты для рамки xUnit, скриптов, графических рекордеров/воспроизведения и т. Д. И будем благодарны за любые советы.
На Android 4.1, в настоящее время новая система тестирования от Android, которая позволяет проводить тестирование а также всей системы: http://developer.android.com/tools/testing/testing_ui.html –
[Robotium] (https://code.google.com/p/robotium/) удовлетворит эту потребность и только в нескольких строках. – Dori