前段时间重新研究了下appium的移动端测试简单写个总结
appium 安装
配置java、android开发环境...
安装nodejs
安装appium
cnpm install -g appium(如果没有cnpm可以通过npm install cnpm -g -registry=https://registry.npm.taobao.org安装)
获取H5页面元素
1.想要测试h5的页面,apk首先得开启webview debug模式
2.谷歌浏览器输入chrome://inspect/#devices如果设备连接正常会有inspect按钮,点击进入即可看到在浏览器中看到手机上面的h5页面(如果显示空白页面需要科学上网)
遇到的问题及解决方式
1.对H5页面进行测试时,第一次点击h5页面有效,第二次再进入H5页面进行点击操作出现无响应的情况。
解决方法: 配置appium服务启动参数时加入'recreateChromeDriverSessions': True
2.使用uiautomator2多个手机并行运行测试时出现只有一个手机在运行测试,别的手机并没有运行测试
解决方法:配置appium服务启动参数时指定systemPort: xxxx,uiautomator2会使用8200端口做一个adb命令转发,多个手机并行执行是需要给每个测试任务指定不同的转发端口
3.appium之settings、unicode、unlock的app每次都要确认安装
解决方法:参考http://ask.testfan.cn/article/919,修改对应文件
4.不同的手机因为Android system webview的版本不同需要的chromedriver的版本不同
解决方法:依据adb shell dumpsys package com.google.android.webview得到webview的版本号,根据版本号选择对应的chromedriver版本,配置appium服务启动参数时加入chromedriverExecutable:chromedriver路径, 去选择对应的chromedriver版本
adb 无线调试
由于这两天需要做app的一个耗电量测试连接usb去用脚本运行app的话会进行充电,于是选用adb的无线调试去丢掉usb线,进行测试
执行方式:
1.用usb连接设备和电脑,确认adb devices 命令可以看到设备正常连接
2.dos命令行执行adb tcpip 5555设置tcpip的连接端口为5555
3.dos命令行执行adb shell ifconfig 或者 adb shell netcfg 去查看设备的ip
4.拔掉usb线,dos命令行执行adb cennect ip,此时便会出现已连接的提示,执行adb devices可以看到当前连接的设备