分析
这个问题考察是对专项测试的了解, 其实专项测试主要包括性能测试 和安全测试,这个问题正式 客户端的性能测试概念问题,如果没有测试经验可能这个问题什么也回答不上来,我遇到过面试官想和他聊客户端性能测试,她还输qps、tps 的,这会让面试官一看就是外行,所以了解专项测试应该从概念入手
专项测试简单概念普及
专项测试 指的对某个模块、某个功能、某项性能等进行的专门的针对性的全面的测试,常常分为 性能测试和安全测试,性能测试又分为移动端性能测试和 服务端性能测试, 移动端有很多,web 、安卓 iOS 、鸿蒙、小程序、 h5等,每一个的指标都有所差异,所以专项测试是一个比较广泛的学问,需要一个不断的学习和积累
回答
crash
定义:程序奔溃或闪退
产生原因
空指针
数据类型转换
内存泄漏
数组越界
低版本手机调用高版本API
测试中需要关注
关注界面中的所有按钮、控件的操作有效性,点击是否能产生对应的目标事件。
通过自动化对应用的部分运算操作进行长时间负载测试,可有效暴露此问题。
通过重复的多次操作可有效暴露此问题。
通过对输入框进行异常输入,例如日期输入框,文本输入框等。
定位问题
crash 日志
adb log
anr
定义:程序未响应
产生原因
主线程执行了耗时操作 (大量的数据库读写、耗时的网络访问、调用手机的某些功能超时)
其他程序占用CPU导致本进程得不到CPU时间片 (其他进程的频繁读写操作、其他线程持有锁,导致主线程等待超时、其它线程终止或崩溃导致主线程一直等待)
测试中关注
对部分上传文件较大的页面、保存文件信息较多的动作,比如电话本信息、带有图片的记事本保存等操作。
对某一时间的网络进行极限使用,在被测应用的一个场景无法使用网络的情况下关注。
重复多次的操作可能导致ANR事件,可使用Monkey工具进行测试。
多任务、多线程应用内存占用极限时。
定位问题
log文件夹下全局搜am_anr
测试工具
instruments,monkey , macaca nosmoke ,fastbot
测试用例
包括app所有主场景,app 自动化不好覆盖,最好使用monkey工具,例如 macaca nosmoke ,fastbot 等
解析
问题主要考查对专项测试中某一指标的理解,这个回答从解释到问题分析,再到定位问题,测试工具,测试方法都回答非常全面
写在最后
我是小巴哥,一个陪你成长,实实在在分享 测试干货职场经验的人,欢迎关注!!!