Android端手机测试体系

 1.冒烟测试
  跟 web端的测试流程同样,你拿到一个大家开发作出来的apk首先得去冒烟,也就是保证他的稳定性,指定时间内不会崩溃。这款原生sdk自带的monkey能够当作咱们的测试工具。就跟我以前博客所说的,monkey测试模拟了用户的按键输入,触摸屏输入等等,看设备多久时间出异常。由于它得用到adb命令,那么同窗们可能还得去自学一下adb命令。若是抓到crash(好比内存溢出,空指针异常什么的),及时向你家开发及时反馈,你也能够把它当作一个 性能测试工具
   2.安装,卸载测试
  这项对web应用可能测得比较少,这一块极可能归拢到我在后面讲的适配性测试里面。在不一样机型测试大家应用的安装,以及卸载,看看会不会出现问题;
  这是个第三方 手机助手蔓延的时代,那么发布到手机助手上,检查能不能装卸也是很重要的
   3.在线升级
  一个手机apk得顺应时代的需求,按期时不时的进行更新,在我第一份 工做里,很重要的一个内容就是测试在线升级功能。
  开发给你一个新版本,你得去测试安装卸载,以及功能流程
   4.功能测试
  你测试了大家apk的 功能测试用例。涵盖三个方面:
  4.1业务逻辑测试,测试你家公司apk的业务逻辑流的
  4.2功能测试:测试你家apk的功能点的。反正我又不知道你家apk是啥,你本身照着需求书设计呗,测试方法不详细说了
  4.3与web端的交互测试。不少apk,好比淘宝啊,京东的app,会跟web客户端进行功能的交互,我想你们都用app来购物,那么你买的东西能正常在web端查看到,这就是你的测试点了。你们能够理解这个意思吧。
   5.稳定性及异常性测试
  稳定性及异常性测试主要两点;
  5.1.交互性测试:客户端做为手机特性测试,包含被打扰的状况13种,来电,来短信,低电量测试等,还要注意手机端硬件上,如:待机,插拔数据线、耳机等操做不会影响客户端。
  5.2.异常性测试:主要包含了断网、断电、服务器异常等状况下,客户端可否正常处理,保证数据正确性。
  其实这一块又能够跟monkey牵扯到了哈哈
   6.性能测试
  这一块我不太了解,仍是把我本身的想法跟你们说下。
  测试点跟web应该差很少,好比尖峰性能啊, 压力测试啊,基准性能等等
  1.尖峰性能,在一个时间点,你app的用户量出现井喷现象,有名的双11抢猫猫活动嘿嘿
  2.压力测试,逐渐加压
  3.基准,压服务器端接口及客户端在不一样网络环境下响应速度。主要为258原则
  对性能这**兴趣的同窗,能够先学学性能有名的理发师模型,比较有趣的。
  在一块,我曾帮别人 百度到loadrunner测试手机apk,很幸运,他成功解决了他的问题。个人想法或许,android端或许,注意是或许,将app的什么socket,tcp/IP映射到web端的测试工具上,好比jmeter,来进行测试,这是个人一个猜测。另外的大神或许会给咱们好的测试方法意见
   7.UI测试
  界面易用,简介,符合用户者的口味。
   8.适配性测试
  也就是兼容性测试。
  1.手机分辨率:320*240 、480*320、800*480等等
  2.不一样手机版本,2.3,4.2,4.3等等,用户面尽可能测的覆盖率高一点
  3.手机系统,不少手机厂商喜欢在android原生系统的基础进行修改,你得测试啦
  4.手机尺寸:3.4,5.0,4.7等等,这里我来插一下话,我在自学android开发的时候有时候会想,如何将本身开发的app调到适合这么多android机型。百分比是个不错的选择
   9.电量及流量测试
  用户除了你app的基础功能,适配,UI美观。还关心耗不耗流量跟电量。通常非唤醒状态,后台状态会比较低耗能。这个测试范围,得看你的公司定下的基准。广播貌似能够**用电量,你们了解了能够留言告诉我学习学习哈哈
   10.内存泄露
  这个东西你能够用monkey抓到,固然也能够DDMS抓
11.回归测试工具
  这个版块的测试工具为你们介绍monkeyrunner,robotium,appnium。
  我一直认为通常小公司,用测试工具,主要是主要功能的回归 。只有大公司才有本钱请大神用自动化黑盒工具来作大规模的测试覆盖。所以我把这三个工具归属于回归测试工具
  11.1monkeyrunner
  该monkeyrunner工具提供了编写控制Android设备或**器从Android的代码以外程序的API。随着monkeyrunner,您能够编写安装一个Android应用程序或测试包,运行它,发送击键它,须要它的用户界面截图,并将截图工做站上的 Python程序。
  脚本用jython,what is jython?It is A mix of python and  Java。所以能够用java api,固然你也能够扩展。
  11.2appnium
  Appium是一个开源、跨平台的测试框架,能够用来测试原生及混合的 移动端应用。Appium支持 IOS、Android及FirefoxOS平台。Appium使用WebDriver的json wire协议,来驱动Apple系统的UIAutomation库、Android系统的UIAutomator框架。Appium对IOS系统的支持得益于Dan Cuellar’s对于IOS自动化的研究。Appium也集成了Selendroid,来支持老android版本。
  跨架构,native hybrid webview
  跨设备:android ios
  跨语言:java python ruby
  跨app,多个app直接交互
  native本地应用,如android的信息应用
  hybrid native跟webview的结合
  webview 浏览器应用
  11.3robotium
  Robotium是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒 自动化测试,它提供了模拟各类手势操做(点击、长按、滑动等)、查找和断言机制的API,可以对各类控件进行操做。Robotium结合Android官方提供的测试框架达到对应用程序进行自动化的测试。另外,Robotium 4.0版本已经支持对WebView的操做。Robotium 对Activity,Dialog,Toast,Menu 都是支持的。
  robotium底层是android的instrument,经过Solo对象来建立一系列操做。可是只能android端,不像appnium跨设备。
  这里扩展一下你们的知识面,如何定位元素,我总结了三个,还有其余方法,请你们留言。
  针对坐标的:
  1.monkey的recorder,以前的博客有详细讲
  2.hierarchyviewer:sdk自带的工具。不少朋友会问商业机为何不行,由于 谷歌作了安全措施。无版本限制,若是你想测4.2以上版本也能够。注意,开发板或者模拟器能够用。
  效率为得到一个界面的全部节点和图片时间为10s左右
  3.uiautomator ,4.2以上android版本的定位利器,能够真机哟。他也是能够作功能测试的

 补充:横屏、竖屏的测试java

          兼容性测试:软件兼容性(杀毒软件、助手及管家之类的)、硬件、网络、OS及版本、分辨率。python

          安全性测试android

相关文章
相关标签/搜索