应很多大佬要求,最近几天在这个系列主要说一下最近的工作:小程序自动化& airtest 的学习过程。
目前已经进行了两天的使用:
第一天,下载了airtest的ide,打开起来感觉卡卡的,链接成功了手机,写好了一个demo执行,然后利用其余时间,迅速写好了 8个模块的用例。虽然看着多,但是截图执行是真的写起来很快,主要用的就是 touch 点击,exists 断言存在,sleep等待了。
运行了几遍,调试了一会,修改了一些之后,就很稳定了。
但是第一天结束后 对其的运作命令,潜入等都不是很了解。发现它确实是python语法,并且写起来较麻烦,因为没有联想等等,也不明白这个本身的脚本是怎么保存 或者调用等的。
第二天,想着区分用例和抓手,就引入了unittest,因为没有联想,所以输入还是有点麻烦,但是还好,代码量不多。变成了如下这样
也弄懂了 目前我所写的只是一个空白脚本,后缀是.air,我可以另存到桌面上。放到桌面上之后发现原来是个文件夹。
里面有那一堆图片和那个PY文件。
运行完之后 CTRL L 可以打开它的报告:
看起来还是不错的,瞬间觉得自己生成的那个HTTPTESTRUNNER的报告low了。但是暂时就先这样吧。 开始想既然要做成平台,那么最好把这个AIRTEST执行的整个过程简化成一个命令。简化命令有俩种办法:
1.观察运行的第一句输出:
这个其实就是所谓的命令,但是还是觉得要正规一些,毕竟还有一些参数,所以去百度了一下还真有命令行模式,看来和APPIUM类似。
pip install airtest 即可下载命令行
之后启动命令是
airtest run '脚本' --device Android:///设备名 --log "log地址"
即可执行 该脚本。方便快捷。
后来发现 这样做并没有生成对应的报告,所以百度梳理了一下,原来生成报告有另外的命令:
airtest report "脚本名" --log_root "log地址" --outfile “报告地址” 注意,报告名要以.html后缀。
必须在前一句执行成功后,执行,并且要指定前一句生成的LOG地址:
如上图,就是这俩命令了,其中的--lang zh 是使用中文的意思
运行之后就生成了如下的这个HTML的报告。
好了 今天的记录到此,明天会进行更多的改造。