我做过八年软件测试,其中2年app测试,期间不断学习,web 端工具selenium、接口端postman、手机端appium均有涉足,下面我以亲身经验来说说手机自动化的痛点吧,总结不全之处还望补充,不喜勿喷。
UI端自动化重中之重是调试找到元素,常用的调试工具有Uiautomatorviewer、appium inpect 、uiautomator2 + weditor、spy-debugger、mobiledebug。
1.Uiautomatorviewer:只能获取原生的控件,混生的会报错,可以用以下代码来抓取再导入即可。
新建 抓取app.bat
@echo on
adb shell uiautomator dump /sdcard/app.uix
adb pull /sdcard/app.uix D:/AndroidUI/app.uix
#存到D盘的app.uix文件中,在D盘新建一个文本文档改成app.uix
adb shell screencap -p /sdcard/app.png
adb pull /sdcard/app.png D:/AndroidUI/app.png
2.appium inpect: 用的较少,很不放便。
3.uiautomator2 + weditor:推荐使用这种方式原生、混生均可调试.尤其是对于小程序测试者来说真是福音,(用谷歌方式调试,可以访问外网的情况下Chrome依然白屏,腾讯官方TBS Studio调试微信小程序尝试数天最终放弃。)
4.spy-debugger:设置代理时,电脑端可以抓到请求,手机无法上网,网上知乎查资料耗时许久均无解。
5.mobiledebug:没有经过验证,请多尝试。