Используйте инструмент App Crawler, входящий в состав Jetpack , для автоматического тестирования вашего приложения без необходимости писать или поддерживать какой-либо код.
Сканер работает вместе с вашим приложением, автоматически выполняя действия (нажатие, пролистывание и т. д.) для исследования пространства состояний вашего приложения. Сканирование прекращается автоматически, когда больше нет уникальных действий, приложение выходит из строя или истекает заданное вами время ожидания.
Тестировать с помощью сканера легко, поскольку не нужно писать или поддерживать код. Более того, вы можете запустить его на различных устройствах, чтобы выявить сбои, проблемы с отображением или производительностью. Как правило, рекомендуется использовать облачный сервис, такой как Firebase Test Lab, для более простого и быстрого тестирования нескольких комбинаций размеров экрана и конфигураций оборудования.
Целевая аудитория
App Crawler предназначен для разработчиков, которые хотят обеспечить базовую функциональность своего приложения при минимальной настройке. В дополнение к чистому тестированию «непрозрачного ящика» сканер также можно настроить на предоставление определенных входных данных, таких как учетные данные для входа или глубокие ссылки.
Начиная
Прежде чем начать, убедитесь, что у вас установлена последняя версия Android SDK. Это поставляется с Android Studio . Если вы устанавливаете отдельный Android SDK, убедитесь, что он включает новейшие инструменты сборки и инструменты платформы.
Затем загрузите двоичный архив искателя .
Далее либо запустите эмулятор, либо подключите физическое устройство с помощью USB-кабеля. Подтвердите подключение устройства, выполнив следующую команду:
adb devices
Чтобы вызвать искатель, сначала извлеките архив в выбранный вами каталог. Из этого каталога вызовите искатель с помощью следующей команды:
java -jar crawl_launcher.jar --apk-file path/to/my/app.apk --android-sdk path/to/my/android/sdk
Параметры сканера
Для вызова искателя можно использовать следующие параметры:
Вариант | Описание |
---|---|
--android-sdk path | Указывает путь к вашему Android SDK. Это обязательный флаг. |
--apk-file file | Указывает путь к APK-файлу вашего приложения, который затем устанавливается и сканируется App Crawler. Это обязательный флаг, если |
--app-package-name name | Указывает имя пакета вашего приложения. Используйте этот вариант, если ваше приложение уже установлено на устройстве и переустановка не требуется. Это обязательный флаг, если не указан |
--key-store path | Указывает путь к хранилищу ключей, которое подписывает APK-файлы вашего приложения и сканера. Используйте эту опцию, если для правильной работы вашего приложения требуется определенная подпись. |
--key-store-password password | Указывает пароль для хранилища ключей, указанный вами для опции Это обязательный флаг, если указан |
--timeout-sec timeout | Указывает время ожидания сканирования в секундах. Если не указано, сканирование прекращается через 60 секунд. |
Известные проблемы
Не удалось удалить исходные файлы подписей.
Перед началом сканирования пользователи JDK 9 могут увидеть это сообщение об ошибке:
androidx.test.tools.crawler.launcher.exceptions.ApkSigningException: Failed to delete original signature files
Если вы столкнулись с таким поведением, мы рекомендуем использовать JDK 8 или 10+. Дополнительную информацию по этой проблеме можно найти в этой ошибке JDK 9 . Некоторые пользователи исправили проблему, пересобрав свой APK с помощью обновленной версии Android Studio.
Дополнительные ресурсы
Для получения дополнительной информации об использовании App Crawler обратитесь к следующим ресурсам.
- Firebase Test Lab Robo Test содержит подробную документацию, а также инструкции по запуску тестов сканера в облаке.