1、手机测试体系初步认识,Android系列 制作:Mads(吴越欣),目录,1.冒烟测试 2.安装卸载测试 3.在线升级测试 4.功能测试 5.性能测试 6.UI测试 7.适配性测试 8.电量及流量测试 9.回归测试工具,1.冒烟测试(monkey),monkey的简单介绍,一、Monkey 是什么?Monkey 就是SDK中附带的一个工具。 二、Monkey 测试的目的?该工具用于进行压力测试。 然后开发人员结合monkey 打印的日志和系统打印的日志,结局测试中出现的问题。 三、Monkey 测试的特点?Monkey 测试,所有的事件都是随机产生的,不带任何人的主观性。 四、一个简单的mon
2、key命令:adb shell monkey -p com.xy.android.junit -s 500 -v 10000,2.安装,卸载测试,1.生成APK文件在真机上可以安装及卸载; 2.android手机端的通用安装工具,如:豌豆荚及91助手等工具可以正常安装及卸载程序。 3.命令行 adb install/uninstall,3.在线升级,一个手机apk得顺应时代的需求,定期时不时的进行更新,在我第一份工作里,很重要的一个内容就是测试在线升级功能。 升级后可以正常使用,4.功能测试,测试了你们apk的功能测试用例。涵盖三个方面: 4.1业务逻辑测试 4.2功能测试:测试你家apk的功
3、能点的。 4.3与web端的交互测试。,5.性能测试,1.尖峰性能,在一个时间点,你app的用户量出现井喷现象,有名的双11抢猫猫活动嘿嘿 2.压力测试,逐渐加压 3.基准,压服务器端接口及客户端在不同网络环境下响应速度。主要为258原则等等,6.UI测试,界面易用,简介,符合用户者的口味。,7.适配性测试,同:兼容性测试。以下四点: 1.手机分辨率:320*240 、480*320、800*480等等 2.不同手机版本,2.3,4.2,4.3等等,用户面尽量测的覆盖率高一点 3.手机系统,厂商基于Android系统的二次开发,如MIUI,Flyme 4.手机尺寸:3.4,5.0,4.7等等,
4、8.电量及流量测试,手机的电量及流程测试主要是为了站在用户角度思考,毕竟电量、流量消耗比较大,会影响客户的使用感受。手机端电量使用率是和CPU使用率承正比的。 以下我用一款测试apk性能的工具测出的一系列图表,比较直观 下载地址http:/ 访问密码 89da,CPU,CPU:80余秒内,cpu占用率峰值为45%,谷值为0%,内存,内存:80余秒内内存的数值变化 Pss-实际使用的物理内存,峰值为95;Uss-进程独自占用的物理内存,峰值为77,电量,电量:80余秒内,电量占用率峰值为271.62MA,谷值为0MA,流量,流量:80秒内,流量以平均16.199kb/S的速度消耗,9.回归测试工
5、具,这个版块的测试工具为大家介绍Monkeyrunner,Robotium,Appium。,9.1 Monkeyrunner,blog:http:/ 该monkeyrunner工具提供了编写控制Android设备或仿真器从Android的代码之外程序的API。随着monkeyrunner,您可以编写安装一个Android应用程序或测试包,运行它,发送击键它,需要它的用户界面截图,并将截图工作站上的Python程序。 脚本用jython,what is jython?It is A mixture of python and Java。因此可以用java api,当然你也可以扩展。,9.2 Ap
6、pium,Appium是一个开源、跨平台的测试框架,可以用来测试原生及混合的移动端应用。Appium支持IOS、Android及FirefoxOS平台。Appium使用WebDriver的json wire协议,来驱动Apple系统的UIAutomation库、Android系统的UIAutomator框架。Appium对IOS系统的支持得益于Dan Cuellars对于IOS自动化的研究。Appium也集成了Selendroid,来支持老android版本。 跨架构,native(本地应用) hybrid(native跟webview的结合) webview(浏览器应用) 跨设备:andro
7、id ios 跨语言:java python ruby 跨app,多个app直接交互,9.3Robotium,Robotium是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击、长按、滑动等)、查找和断言机制的API,能够对各种控件进行操作。Robotium结合Android官方提供的测试框架达到对应用程序进行自动化的测试。另外,Robotium 4.0版本已经支持对WebView的操作。Robotium 对Activity,Dialog,Toast,Menu 都是支持的。 robotium底层是android的instrumentation,通过Solo对象来创建一系列操作。但是只能android端,不像appnium跨设备。,10.一些知识的扩展,如何定位元素,我总结了三个: 1.monkeyrunner的recorder,之前的博客有详细讲http:/ 2.hierarchyviewer:sdk自带的工具。很多朋友会问商业机为什么不行,因为谷歌做了防护措施。无版本限制,如果你想测4.2以上版本也可以。注意,开发板或者模拟器可以用。 效率为获得一个界面的所有节点和图片时间为10s左右 3.uiautomator ,4.2以上android版本的定位利器,可以真机哟。他也是可以做功能测试的,