常用命令
检查appium环境是否搭建完成:appium-doctor
查看手机是否连接:adb devices
进入手机超级后台:adb shell
卸载 APK:adb uninstallcom.sky.jisuanji (如果已安装,就不用卸载)
安装 APK:adb install F:\software\CalcTest.apk
重装 APK:adb install -r F:\software\CalcTest.apk
运行日志:adb logcat 从电脑到手机 adb push F:\test\baidutest.txt/tmp/abc.txt
复制文件到电脑:adb shellcat/data/anr/traces.txt> d:\traces.txt
复制文件到电脑:adb pull/data/anr/traces.txtc:\
使用第 10 组随机数点击: adb shell monkey -p com.sky.jisuanji -s 10 100
使用第 4 组随机数点击: adb shell monkey -p com.sky.jisuanji -s 4
100 手机元素定位工具(不能定位H5页面和web网页):uiautomatorviewer H5页面(网页)
定位方法:1.使用PC端打开网站选择手机视图 2.使用翻墙软件进入网页
1、手机安装 Chrome 浏览器
2、开启 USB 调试模式,并使用安装的 Chrome 浏览器打开待测 H5 页面
3、在电脑端的 Chrome 浏览器输入 chrome://inspect
4、打开链接后,选中 Discover USB devices,可以看到监测到的设备,然后点击 inspect,弹 出页面后,就可以审查页面上的元素了(备注:在第一次使用该工具时,打开会是空白页面, 需要翻墙后再次运行该工具。)
5、审查到元素后,就可以利用元素定位 API 去识别元素。
获取包名的方法
反编译:aapt dump badging c:\software\CalcTest.apk
打开程序后输入:dumpsys activity | grep mFocusedActivity
手机操作
1、按键操作
pressKeyCode(key, metastate)
key 为按键事件,metastate 为辅助功能键
举例:
pressKeyCode(AndroidKeyCode.HOME) 按 HOME 键
pressKeyCode(AndroidKeyCode.KEYCODE_A, 1) 按 A 键
2、锁屏操作
lockScreen(seconds):屏幕几秒后锁屏
isLocked():判断屏幕是否锁屏,返回布尔类型,锁屏为 true
3、打开通知栏
openNotifications()
4、屏幕滚动
scrollTo(text):滚动到某个 Text 属性为指定的字符串的控件
scrollToExact(text):滚动到某个 Text 属性包含传入的字符串的控件
5、获取网络状态
getNetworkConnection().value :返回一个整型
0:none 1:Airplane Mode 2:Wifi only 4:Data only 6:All network on
6、设置网络状态
setNetworkConnection(connection)
举例:
setNetworkConnection(new NetworkConnectionSetting(1));//飞行模式
setNetworkConnection(new NetworkConnectionSetting(true, false, false))//飞行模式
7、截取屏幕
getScreenshotAs(outputType)
举例:
File screen = driver.getScreenshotAs(OutputType.FILE);
File screenFile = new File("d:\\screen.png");
try {
FileUtils.copyFile(screen, screenFile); //commons-io-2.0.1.jar 中的 api
} catch (IOException e) {
e.printStackTrace();
}
8、横竖屏设置
rotate(orientation):设置屏幕横屏或者竖屏 LANDSCAPE (横向) 或 PORTRAIT (纵向)
getOrientation():获取当前屏幕的方向
举例:
driver.rotate(ScreenOrientation.LANDSCAPE); 设置屏幕为横屏
总结
手机黑盒测试的内容?
1. 功能测试:对具体功能点一一测试,确保每个点都能正确实现相应功能
2. 界面测试:核对原型图、产品效果图
3. 业务流程测试 重点*******
4. 兼容性测试:不同主流设备、网络兼容、不同分辨率的兼容
手机兼容性测试过程
1. 获取适配机型列表(需求或者开发明确提供、调研系统、机型等市场占有率)-
2. 提交一份兼容性清单给测试经理审核
3. 设备的获取(公司采购、借用同事的手机、租用远程手机(优测)、云测平台)
4. 手工测试、自动化测试
5. 云测--得出测试结果
云测:testin 百度云 腾讯优测 阿里云测
5. 交叉测试: 对于正在运行的应用,若进入短信、电话等其他软件响应的情况,不会影 响 所测试应用,且会保证应用都能正确运行
6. 安装、卸载、升级测试:强制升级、可选升级
7. 用户体验测试 重点:*******
怎么测试 web 网站、C/S B/S 和移动端测试有什么联系和区别
C/S:功能+安装/升级
B/S:功能+浏览器兼容+性能(响应时间)
APP : 功能+机型兼容+用户体验测试
UI 自动化测试流程
可行性分析--》测试需求分析--》制定测试计划--》自动化测试设计--》测试脚本开发--》无 人职守测试--》提交测试报告--》脚本维护阶段
持续集成