1.app测试与web测试的区别
-在流程和功能测试上是没有区别的
-web项目一般都是b/s架构,基于浏览器的,而app则是c/s的,必须要有客户端
-性能测试方面web测试可能只关注TPS和响应时间,而app还需要关注流量、电量等之类的
-相对于web测试,app多了一些专项测试,如安装卸载测试、稳定性测试、弱网测试及异常场景考虑等
2.app的分类
-原生app,webapp,混合app
3.adb的命令
-adb devices 查看是否连接成功
-adb start-server 启动服务
-adb kill-server 停止服务
-adb -s 设备名 shell 进入到设备
-adb connect 设备 手动连接设备
-adb shell dumpsys windows | findstr mCurrentFocus 查看包名
-adb shell dumpsys windows | findstr mFocusedApp 查看活动页
-adb dump badging apk安装包 | findstr package 查看包名
-adb dump badging apk安装包 | findstr activity 查看活动页
-adb logcat -c 清除日志
-adb logcat 收集日志
-adb logcat -v time > 本地目录 收集日志重定向(-v time:添加带time类型日志格式)
-adb logcat -f 终端目录 -n 10 -r 1 收集日志到终端
-分析:crash:崩溃,anr:无响应,exception:异常,error:报错
-截图:adb shell screencap -p 终端路径/xxxx.png
4.Monkey命令
-输出日志:adb shell monkey -p 包名 -v --ignore-crashes --ignore-timeouts -pct-touch 30 --pct-motion 30 --pct-trackball 40 50 >本地目录
-模拟用户真实操作:adb shell monkey -p 包名 -v --ignore-timeouts --pct-touch 30 --pct-motion 30 --pct-trackball 40 --throttle 2000 50 >本地目录
5.专项测试
-UI测试:外观(布局,字体,颜色,图标依从性,内容是否正确)、用户体验(是否有新手指导,操作提示信息是否友好,导航栏,层级,首页加载量)、界面触摸范围(开发者选项-显示边界布局)
-兼容性测试:测试app在不同的环境中的安装和运行是否正常(例:Android,ios,品牌,型号等)
-弱网测试:检查客户在不同的网络环境中,应用的功能和业务可以正常使用
-性能测试
-CPU测试:adb shell dumpsys cpuinfo 包名(查看app在过去5S的CPU平均值),adb shell dumpsys cpuinfo | findstr 包名(通过管道符过滤),工具:GT
-内存测试:app在不同状态下观察内存,adb shell dumpsys meminfo | findstr 包名(通过dumpsys查看)
-流量测试:针对应用发起网络请求所产生的数据量的大小进行测试,adb shell cat /proc/uid_stat/${uid}/tcp_snd(查看发送的流量),adb shell cat /proc/uid_stat/${uid}/tcp_rcv(查看接收的流量),工具(GT,perfdog)
-电量测试:adb shell dumpsys batterystats 包名(查看某个app电池状态),工具(GT,itest,emmage)
-安装卸载测试
-交叉测试(冲突测试)
-稳定性测试(adb shell monkey -p 包名 -v --ignore……)
6.安卓环境部署
-安装jdk,配置环境变量
-安装sdk,配置环境变量
-手机端:打开手机的开发者模式,进入开发者选项,打开USB调试模式,usb默认设置-文件传输
-电脑端:安装手机驱动
-连接:cmd窗口输入adb devices
标签:包名,shell,--,APP,adb,测试,app From: https://www.cnblogs.com/tangyuanbing/p/17008949.html