App自动化实战总结
花了一周实现APP自动化,感慨颇多,随笔一记。
该app程序是一个类似微信聊天的项目,分别有ios和android端,web端还没开始,故后面再谈。先说本人测试的android端。
测试机器分别是华为荣耀和小米4,电脑配置:win7 64位 8G。
首先,配置电脑的测试环境,请参考虫师大大的Appium移动自动化测试http://www.cnblogs.com/fnng/p/4540731.html里面有详细的配置步骤(最好完全按照来)。
环境配置OK了,如果只有1到2台测试机,可以直接连接真机测试,如果是多台测试机,建议使用Android SDK Tools的AVD Manager来配置。先说连接真机测试:
1、使用adb查看手机设备名称。
用USB连接待测手机(例如华为荣耀),打开USB手机调试后,打开cmd窗口,输入命令查看连接的设备:adb devices
如果设备名称没有显示,先查看5037端口是否被占用(5037是adb默认端口):netstat -ano | findstr "5037",如果被占用了,关闭此占用程序,再运行adb devices命令。
如果没有占用程序或者占用程序被关闭了,还是无设备名称,先查看是否电脑里有2个adb.exe,输入命令:where adb,可查看adb.exe所在文件路径,删除多余路径下的adb.exe即可。
以上2种方法都不行的话,建议查看设备的驱动程序是否安装成功,可以下载个豌豆荚助手安装设备驱动。
2、使用uiautomator工具查找程序的元素属性。
下载uiautomator包,解压后放置在python安装目录的根目录下,打开cmd,输入命令:python setup.py install,安装好uiautomator,在path里配置好环境变量(把uiautomator安装路径添加进path里即可),确保在cmd里输入uiautomatorviewer就可打开uiautomator工具。如图:
点击此按钮即可加载出手机的当前界面,在工具的右下方可看到元素属性及其属性值。
当人为切换手机的界面,该工具不会自动加载,需要点击此图标才会加载出手机的当前界面。
3、写一个简单的测试登录界面的脚本。
本人发现app程序由于界面比web端的网页要简单很多,所以app程序的方法主要就是click()方法,即点击触发事件,不像web端有鼠标事件、键盘事件等。
我是用的python自带的IDE写脚本(没办法,其他语言不会。),
我的程序登录界面如下图:
脚本:
如上述不清楚或有问题的地方,可以联系我,欢迎交流。
浙公网安备 33010602011771号