appium入门必备知识-移动端测试思路和方法

移动端应用分类

native app 移动端原生应用,运行速度快,性能好,用户体验好
web app 移动端浏览器,传统htlm、js前端web技术,运行在手机浏览器中的应用
hybrid app 俗称混合应用,介于webapp 和native app两者之间的一种app形式,如微信、支付宝,混合应用内嵌h5,能更快的适用不同端,更快的发布。热更新,不需要app升级就可发布,但是有限制

不同设备有页面兼容问题,前端采用自适应技术,对于自动化而言是可以复用

这个三个类型的app对于自动化而言,pc的ui自动化中的PO模型设计模式,只是自动化的底层不一样

移动应用专项测试思路和方法

基础业务功能保障后,可做专项拓展测试,常见的主要可分为:交叉事件测试、兼容性测试、流量测试、耗电量测试、弱网测试、边界测试

monkey归类到交叉事件测试,它是自动化随机测试的一种,但是随机性太强了,所以只当做辅助手段,不会专门用它做自动化测试

交叉事件测试

交叉事件测试也叫中断测试,是指app在执行过程中,有其他事件或者应用中断当前应用执行的测试

事件分为系统级别的事件,app级别事件,模拟不同类型对app产生的影响,系统级别:电话、闹钟 app级别事件:app升级提示、相同资源互相影响,如播放音频
注意:对于交叉事件测试一定要在真机上测试,不要用模拟器

兼容性测试

兼容性测试顾名思义就是,要确保app在各种终端设备、各种操作系统的版本、各种屏幕分辨率、各种网络环境、各种机型下,功能的正确性

靠人工拿十几部机器去测肯定是不可行的,大公司搭建兼容性的测试平台,可在平台中选择对应的设备,搭建平台需要足够技术支撑,设备要足够多,几百个上千个设备才有意义
远程租赁开源平台:STF 参考 https://www.jianshu.com/p/464fadaeb1d7

流量测试

流量测试,往往借助于android和iOS自带的工具进行流量统计,也可以利用tcpdump、Wrieshark和Fiddler等网络分析工具

对于android系统,网络流量信息通常存储在/proc/net/dev目录下,也可以直接利用ADB工具获取实时的流量信息。另外,推荐一款android的轻量级性能监控小工具Emmagee

对于ios系统,可以使用Xcode自带的性能分析工具集中的Network Activity,分析具体流量的使用情况,Xcode只能在MAC系统才能使用

当流量过大时,如何优化
1、是否有做图片压缩
2、是否有优化数据传输格式,如json数据格式比xml数据格式要小
3、部分文件有压缩且有加密,建议先做压缩再做加密
4、同一个业务场景,减少单次接口的调用

耗电量测试

耗电量检测既有基于硬件的方法,也有基于软件的方法,我所经历过的项目都是采用软件的方法,android和ios都有各自的方法

android通过adb命令:adb shell dumpsys battery ,来获取应用的耗电量信息
ios通过apple的官方工具Sysdiagnose来收集耗电量信息,然后,可以进一步通过Instrument工具链中的Energy Diagnostics进行耗电量分析

耗电测试中,google推出的history batterian工具也可以很好分析耗电情况

弱网络测试

开源网络测试工具:Facebook的Augmented Traffic Control(ATC)。如果感兴趣,可以在它的官方网站(http://facebook.github.io.augmented-traffic-control)找到详细的使用说明

边界测试

边界测试是指,移动app在一些临界状态下的行为功能的验证测试,基本思路是需要找到各种潜在的临界场景,并对每一类临界场景做验证和测试
场景如:1、内存不足,将达到临界值时,验证app是否正常

posted @ 2021-06-07 20:10  happy-winds  阅读(106)  评论(0编辑  收藏  举报