Мы создаем сложное приложение для Android, состоящее из множества экранов и рабочих процессов, распространенных во многих видах деятельности. Наши рабочие процессы похожи на то, что вы можете увидеть на банкомате Банкомата, например, есть Activity
для входа в это переключение в главное меню Activity
, которое может перейти на другие действия на основе пользовательских вариантов.
Поскольку у нас так много рабочих процессов, нам нужно создать автоматизированные тесты, которые охватывают несколько видов деятельности, чтобы мы могли протестировать рабочий процесс из конца в конец. Например, используя пример ATM, мы хотели бы ввести действительный PIN-код, убедиться, что он отправляет нас в главное меню, выберете наличные деньги, убедитесь, что мы находимся на экране наличных денег и т.д. И т.д., И, в конечном итоге, вернуться в главное меню или выйти из системы.
Мы играли с тестовыми API, которые поставляются с Android (например, ActivityInstrumentationTestCase2
), а также с Positron, но ни один из них не способен тестирование за пределами одного Activity
, и хотя мы можем найти некоторую полезность в этих инструментах для какого-либо модульного тестирования, они не будут соответствовать нашим потребностям для тестирования сценариев, которые пересекают несколько видов деятельности.
Мы открыты для фреймворка xUnit, скриптов, графических рекордеров/воспроизведения и т.д. и будем благодарны за любые советы.