基本概要
AppCrawler
AppCrawler,是一个基于自动遍历的 app 爬虫工具,支持 android 和 iOS,支持真机和模拟器,最大的特点是灵活性,可通过配置来设定遍历的规则。
自动遍历的价值
- 回归测试,遍历基本的界面,了解主要界面的可用性. 比如兼容性,基本功能;
- 利用遍历获取 app 的加载时间和性能数据,需要借助其他的性能数据抓取工具,比如 OneApm,NewRelic;
- 利用遍历验证 app 的内存泄漏以及稳定性等功能,需要借助 LeakCanary 和 MLeaksFinder
- UI diff 验证新老版本的功能差异,并识别细节的问题;
- 抓取接口请求 辅助验证一些模块基本接口,并辅助分析接口调用流程,为接口测试做准备;
测试数据
- appcrawler-2.4.0-jar-with-dependencies.jar
- com.xxx.xxx.teacher-1.3.1-uat.apk
- Appium Desktop V1.15.1
- 夜神模拟器 V6.6.0.3
运行命令
java -jar appcrawler-2.4.0-jar-with-dependencies.jar --capability "appPackage=com.xxx.xxx.teacher,appActivity=com.xxx.xxx.ui.user.SignInActivity"
输出结果
默认在当前目录下会生成一个包含输出结果的目录,以时间命名,包含了如下的测试结果:
- 所有遍历过的控件组成的思维导图
- 包含了遍历覆盖的 html 报告
- 用于做 diff 分析的数据文件
具体操作


遍历结果



参考资料