App Crawler

【App Crawler】眼前多少难甘事,自古男儿当自强。这篇文章主要讲述App Crawler相关的知识,希望能为你提供帮助。

App Crawler

文章图片

Google官方出了一款App遍历工具App Crawler。
文档:https://developer.android.google.cn/training/testing/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:https://dl.google.com/appcrawler/beta1/app-crawler.zip
接下来,启动Android模拟器,或者通过USB连接一台Android手机,通过ADB工具检测设备。
> adb devices List of devices attached 6QDDU196XXXXXXdevice

将下载的 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解决了这个问题。

    推荐阅读