Google 官方出了一款 App 遍历工具 App Crawler.
文档:
App Crawler 工具是 Android Jetpack 的一部分, 它可自动的运行你的 App, 不需要编写或维护任何代码.
通过 App Crawler 运行 App, 自动的执行动作 (点击, 拖动等) 遍历你的 App. 当没有其他特殊的操作要执行, 应用程序崩溃或达到超时时间, App Crawler 将自动停止.
Crawler 进行测试非常简单, 因为不需要编写和维护任何代码. 你可以在各种设备上运行它来查找崩溃, 视觉或性能问题. 我们可以将它部署成云服务, 这样可以更快地测试不同屏幕的大小, 硬件配置下 App 的运行情况.
目标人群
App Crawler 的目标用户是那些希望以最少配置确保 App 基本功能的开发人员. 除了纯黑盒测试之外, 还可以配置 App Crawler 来设置特定的输入, 比如登录凭证或 deep links.
开始使用
在开始之前, 你必须安装最新版的 Android SDK, 你可以安装 Anroid Studio 来获取, 如果你已经安装了 Android SDK, 取保它包含最新的 build tools 和 platform tools.
下载 App Crawler:
接下来, 启动 Android 模拟器, 或者通过 USB 连接一台 Android 手机, 通过 ADB 工具检测设备.
- > adb devices
- List of devices attached
- 6QDDU196XXXXXX device
将下载的 App-crawler.zip 包解压, 进入到解压目录.
- > cd App-crawler
- > ls
- README
- crawler_app.apk
- debug.keystore
- crawl_launcher.jar
- crawler_stubapp_androidx.apk
执行下面的命令:
java -jar crawl_launcher.jar --apk-file D:/Android/com.meizu.flyme.flymebbs_40001003.apk --App-package-name com.meizu.flyme.flymebbs --Android-sdk D:/Android/sdk
App Crawler 运行完成会生成./crawl_output / 目录, 里面遍历的每一步的截图和更多的日志信息.
Crawler 选项
你可以在使用 Crawler 时跟以下选项.
Option | Description |
---|---|
--android-sdk | 指定 Android SDK 路径。 此选项必填。 |
--apk-file | 指定你的 App APK 路径,App Crawler 会对它进行安装和爬取。如果没有指定 —app-package-name 选项,请使用此选项。 |
--app-package-name | 指定 App 包的名字。当应用程序已安装在设备上,且不需要重新安装时,请使用此选项。 |
--key-store | 指定给 App 和 Crawler APKs 签名的密钥存储库的路径。当您的应用程序需要特定的签名才能正常运行时,请使用此选项。 |
--key-store-password | 指定为 --key-store 选项提供的密钥存储库的密码。如果指定了 --key-store,那么这是必需的标志。 |
--timeout-sec | 指定 Crawler 运行超时时间,单位为秒,如果没有设置,默认为 60s |
已知问题
删除原始签名文件失败.
如果你安装的是 JDK9, Crawler 运行的时候会抛出以下错误信息:
androidx.test.tools.crawler.launcher.exceptions.ApkSigningException: Failed to delete original signature files
如果遇到这种情况, 我们建议使用 JDK 8 或 10+. 有关此问题的更多信息, 请参见 JDK 9 错误. 一些用户通过使用更新版本的 Android Studio 重新构建他们的 APK 解决了这个问题.
来源: https://www.cnblogs.com/fnng/p/11651434.html