实用场景
1、新功能上线,影响到老功能,但是没时间测试老功能,可以使用 自动化遍历回归
2、手工测试、自动化测试 无法覆盖的回归,自动化遍历可以(主要)
3、尽量不写case就可以自动回归
快速回归的工具
合理划分接口测试 和 UI测试的比例和业务边界
服务端返回的数据 校验 --接口测试
数据展示、界面交互 --UI测试
类似爬虫,然后和老功能比对,进行分析
monkey:
健壮性测试:上线前跑10分钟,没有crash ,app就可以相当于没问题
电脑连上真机,直接执行命令即可(因为monkey 已经在android中存在)
执行命令:adb shell monkey --ignore-security-exceptions -p com.xxx.xxx 5000
adb shell monkey -p com.xueqiu.android --pct-touch 50 --pct-appswitch 20 --pct-motion 30 -vv --throttle 1000 200
maxim:改进版的 monkey,调整了遍历策略,更快
暂未开源,自担风险
遍历模式:uiautomatormix、uiautomatordfs、uiautomatortroy
git clone https://github.com/zhangzhao4444/Maxim.git cd Maxim adb push framework.jar /sdcard adb push monkey.jar /sdcard adb shell CLASSPATH=/sdcard/monkey.jar:/sdcard/framework.jar exec app_process /system/bin tv.panda.test.monkey.Monkey -p com.xueqiu.android --uiautomatormix --running-minutes 60 -v -v
查看报错:
1、看截图:monkey是没有截图的,maxim有截图,如果页面崩溃可以手动去找截图看
2、adb logcat | grep CRASH
AppCrawler:依赖appium,android/ios均可用
自动遍历测试 适合扁平化测试用例,而不适合PO模式,业务测试用例/逻辑复杂的话 不容易维护测试用例,所以不能完全代替 UI自动化