APP压力測试新手教程
![]() |
Daniel Knott 用过各种不同编程语言和软件质量保证工具。他在软件开发和測试方面干了七年,自2010年,他一直在德国汉堡的XING AG公司就职,几个项目里,比方XING调查和XING建议,他负责測试管理,測试自己主动化和測试运行。Daniel如今是XING移动和XING ? ? |
?
压力測试和中断測试是移动測试中的重要部分。有了工具的帮助,移动測试员就能确定app可能存在的性能或稳定性方面的问题。为了測试你app的中断情况,你能够在使用app时手动触发设备的多个通知。通知能够是讯息,来电,app升级或推送通知(软件中断)。按音量增减button或不论什么其它硬件button都是一种会对你的app产生影响的中断。全部的任务都手动完毕意味着工作量非常大且非常耗时。多数情况下,那些測试场景无法手动完毕,由于非常难用一两仅仅手模拟高速且多用户的输入。但用工具的话就能够轻松完毕,并且集成到开发和測试流程中也变得相当简单。
安卓Monkey工具
对于安卓app,能够使用Monkey[MON01]工具,它是安卓软件开发工具包(SDK)。Monkey工具在物理设备或仿真器上都能够执行。执行时它生成虚拟随机的用户事件比方触摸,点击,旋转,重击,减低音量,关闭网络连接等对app进行压力測试,看看app是怎样处理全部这些输入和中断的。你须要安卓apk文件的安装包名来执行Monkey工具,不然该工具就会针对整个手机执行其的随机命令而不是仅仅对被測APP了。有了app代码,就能够在AndroidManifest.xml中找到安装包名。假设仅仅有编译的apk文件,移动測试员能够使用Android
Asset 打包工具 [AAP02] (AAPT),从app上获得安装包名。AAPT位于安装好的Android SDK的build-tools目录中。AAPT的路径例如以下:
用以下的命令,能够从apk文件里读出安装包名。
输入就会例如以下所看到的:
假设有了安装包名(本例中是com.myApp),就用adb (Android Debug Bridge) [ADB03]运行Monkey。下列命令将開始Monkey:
2000年表明了Monkey将在app上运行的随机命令的数量。有一个额外的參数, Monkey将再次生成同样序列的事件。这对Monkey运行期间再现一个bug真的非常重要。
UI AutoMonkey
对于iOS app来说,还能够使用一个类似的工具——UI AutoMonkey [UIA04]。UI AutoMonkey也能生成多个命令来对iOS app进行压力測试。要使用UI AutoMonkey,UIAutomation工具模板就要配置Xcode。配置好了之后,须要写一个JavaScript文件讲明压力測试期间须要运行多少以及哪些命令。
UI AutoMonkey例子脚本
假设写了脚本,就能够在Xcode中对iOS app进行压力測试。在測试执行结束时,两种工具都会生成一个关于app中可能发生的错误或问题的概述。
注意:具体安装说明和完整的例子脚本在工具制造商站点上都能够找到。
两种工具都能集成到一个连续的集成系统中以便在每一个命令后自己主动执行。对移动app进行压力和中断測试相当简单,且应该成为移动測试策略的一部分。此外,它还会对測试员产生巨大的利益,帮助团队建立一个稳定可靠的移动app。
版权声明:本文出自 SPASVO泽众软件測试网:http://www.spasvo.com/news/html/20141112144940.html
原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。
APP压力測试新手教程的更多相关文章
- 蓝牙压力測试报抛android.os.TransactionTooLargeException异常分析总结
1.从main日志中找到异常点,例如以下: 08-20 11:05:19.754 5023 5023 E AndroidRuntime: FATAL EXCEPTION: main 08-20 11: ...
- Android开发之按键、触摸屏和手势输入专业压力測试方法
按键输入.触摸屏输入和手势笔画输入等功能是Android开发的基本功能.其稳定性和健壮性对移动应用系统开发很重要.按键.触摸屏和手势输入专业压力測试方法能够使用Monkey,相应用程序进行压力測试,检 ...
- 站点系统压力測试Jmeter+Badboy
近期项目须要压力測试,因此搜了几款试用,首选的是LoadRunner这款大名鼎鼎的測试软件: LoadRunner11 下载请猛戳这里 传送门LoadRunner破解文件 下载请猛戳这里 传送门Loa ...
- php性能优化(一)压力測试工具篇
ab使用 Apache附带的压力測试工具ab,很easy使用,而且全然能够摸你各种条件对Webserver发起測试请求.ab能够直接在Webserver本地发起測试请求.这对于须要了解server的处 ...
- 怎样使用 Apache ab 以及 OneAPM 进行压力測试?
下一个 release 准备小长假后就要 go-live .全部的測试 case 都 cover 过了.但还未进行过压力測试,有点不放心,刚好过节期间家人都回家去了,假期最终能够抽点时间压測一把. A ...
- 学习使用Jmeter做压力測试(一)--压力測试基本概念
一.性能測试的概念 性能測试是通过自己主动化的測试工具模拟多种正常峰值及异常负载条件来对系统的各项性能指标进行測试.负载測试和压力測试都属于性能測试,两者能够结合进行. 通过负载測试, ...
- .Net之路(十五)图解LoadRunner压力測试
在项目编码阶段结束后,就须要进行软件測试. 成为软件开发过程中一个不可缺少的环节.而自己主动化測试也是将逐步取代人工繁杂的測试.压力測试就是软件測试对软件性能评估的一个方面,以下就简介我在使用load ...
- JMeter 压力測试使用函数和 CSV 文件參数化 json 数据
在 http Load Testing 中.json 数据的提交是个让人头疼的问题.本文具体介绍怎样进行 JMeter 的 json 測试提交,以及怎样将其參数化. St ...
- ubuntu 14.04 LTS 安装webbentch压力測试工具
近期在做 压力測试工具,除了apache的ab測试工具外,发现webbentch工具也不错,这里简介下这两个工具. 一.webbentch安装: wget http://blog.s135.com/s ...
随机推荐
- mootools常用特性和示例(基础篇2)
接着上一篇:mootools常用特性和示例(基础篇1) 1.表单操作 html: <form id="myForm" action="submit.php" ...
- IOS手势事件
一, iPhone中处理触摸事件的操作,在3.2之前是主要使用的是由UIResponder而来的如下4种方式 - (void)touchesBegan:(NSSet *)touches withEve ...
- [TypeScript] Creating a Class in TypeScript
Typescript classes make traditional object oriented programming easier to read and write. In this le ...
- Dll的链接使用细节
关于Dll Dll.Exe 都是PE格式的二进制文件. Dll相当于Linux操作系统下的so文件 1 基地址(Base Address)和相对地址(RelativeVirtual Address) ...
- Android Studio2.0 Beta 2版本号更新说明及注意事项
我们刚刚向canary channel推送了Android Studio2.0 Beta 2版本号 老毕译注: ---------- canary channel: 金丝雀版本号,平均1到2周就会更新 ...
- 最简单的基于FFmpeg的移动端样例:IOS HelloWorld
===================================================== 最简单的基于FFmpeg的移动端样例系列文章列表: 最简单的基于FFmpeg的移动端样例:A ...
- 【Nutch2.2.1基础教程之3】Nutch2.2.1配置文件 分类: H3_NUTCH 2014-08-18 16:33 1376人阅读 评论(0) 收藏
nutch-site.xml 在nutch2.2.1中,有两份配置文件:nutch-default.xml与nutch-site.xml. 其中前者是nutch自带的默认属性,一般情况下不要修改. 如 ...
- 定时清理tomcat日志文件
原文链接:https://blog.csdn.net/qq_37936542/article/details/78788466 需求:最近公司服务器发现磁盘经常会被占满,查其原因是因为大量的日志文件. ...
- PHP移动互联网开发笔记(6)——文件的上传下载
一.文件的上传 1.客户端设置: (1).在<form>标签中将enctype和method两个属性指明相应的值. Enctype="multipart/form-data&qu ...
- java中抽象类和空的方法体有什么区别?
public abstract void test();抽象方法public void test(){};方法体为空这两个有什么区别? public abstract void test(); 抽象方 ...