LoadRunner在移动端性能测试的应用
摘选自 《精通移动app测试实战:技术、工具和案例》新书上市

如果大家之前做过性能测试,我相信一定会应用过大名鼎鼎的性能测试工具-LoadRunner。目前LoadRunner的最新版本为LoadRunner 12.0,结合目前移动市场性能测试的需要,LoadRunner也提供了一些基于移动平台的协议和相应的工具。我们将会在本节结合LoadRunner 12.0向大家介绍一下如何使用“HP LoadRunner Mobile Recorder”进行移动端的应用业务的脚本录制,以及应用VuGen实现脚本的编辑,应用Controller实现业务负载场景的设计、监控及执行,应用Analysis进行结果的分析。下面就让我们来了解一下如何应用LoadRunner 12.0 来实现移动平台性能测试的实施过程吧。
首先,从“Google play”下载一个手机端的脚本录制工具“HP LoadRunner Mobile Recorder”,如图9-37所示。

图9-37 Google Play 上“HP LoadRunner Mobile Recorder”相关下载信息
将安装包下载后,安装到手机,安装后手机上将会出现图标,双击该图标打开“HP LoadRunner Mobile Recorder”应用,如图9-38所示。
这里,我们单击“Advanced options”链接,进入到“Advanced Settings”活动,如图9-39所示。然后,选中“Export automatically after recording”选项,我们可以在该活动的下方,看到录制脚本后自动的保存路径为“/storage/sdcard0/Android/data/com.hp.mobileRecorder/cache”。

图9-38 “HP LoadRunner Mobile Recorder”主活动界面信息 图9-39 “Advanced Settings”活动
设置完该选项后,返回到“HP LoadRunner Mobile Recorder”主活动,单击“Start Recording”按钮,此时按钮的颜色由蓝色变为红色,且按钮的名称变为“Stop Recording”,如图9-40所示。大家就可以录制自己需要操作的应用了,这里我们想打开我的博客,阅读标题为“移动平台自动化测试从零开始-MonkeyRunner工具使用(第二节)”的文章。大家就可以按下手机的“Home”键,打开IE浏览器,输入我的博客地址“http://tester2test.cnblogs.com”,然后单击标题为“移动平台自动化测试从零开始-MonkeyRunner工具使用(第二节)”的文章链接,如图9-41所示。

图9-40 开始录制后的界面

图9-41 “移动平台自动化测试从零开始-MonkeyRunner工具使用(第二节)”文章内容
最后,单击“Stop Recording”按钮停止录制,此后“HP LoadRunner Mobile Recorder”弹出一个分发录制的脚本包活动窗口,大家可以根据自己的实际情况选择用邮件或者QQ等工具分发脚本包,这里我们取消分发,返回到“HP LoadRunner Mobile Recorder”主活动界面,如图9-42所示,同时看到其生成的脚本包名称“2015-06-26_14-32-33.lrcap”。然后我们可以利用手机助手类软件,将“2015-06-26_14-32-33.lrcap”脚本包文件下载到我们的电脑,以360手机助手为例,如图9-43所示。

图9-42 “HP LoadRunner Mobile Recorder”主活动界面信息

图9-43 “2015-06-26_14-32-33.lrcap”脚本包文件信息
这里我们将“2015-06-26_14-32-33.lrcap”脚本包文件下载到我的“C”盘根目录,然后直接双击该文件,系统会自动调用LoadRunner的Vugen打开它,如图9-44所示。

图9-44 用Vugen打开的“2015-06-26_14-32-33.lrcap”脚本包文件信息
它是不是和我们普通的Web脚本没有太大的差异呢?大家可以像应用其他Web脚本一样对该脚本进行回放,单击“Replay”按钮,回放完成后将自动显示回放的结果,如图9-45所示。

图9-45 回放结果信息
单击“The TestResults”链接,查看具体的回放内容,如图9-46所示。

图9-46 具体的回放结果信息
当然,还可以根据实际情况,修改完善脚本内容,比如,加入事务、对脚本进行参数化等操作。
也可以应用Controller选择修改完善后的脚本,进行负载场景的设计,同时加入需要考察的一些性能计数器,如图9-47所示。

图9-47 Controller中设计负载场景
场景设计好之后,单击“Start Scenario”按钮执行场景,场景执行完成后,LoadRunner将自动生成测试结果,大家可以通过应用“Analysis”工具对结果进行分析,如图9-48所示。

图9-48 Analysis分析执行结果
如果大家对LoadRunner操作、分析等内容不是很熟悉,建议参看作者的另一本这方面的书籍,即《精通软件性能测试与LoadRunner最佳实战》,该书详细地向大家介绍了性能测试的相关概念、分类、指标、测试流程以及LoadRunner工具的使用及其详细的案例。
LoadRunner在移动端性能测试的应用的更多相关文章
- LoadRunner调用Java程序—性能测试-转载
LoadRunner调用Java程序—性能测试 为了充分利用LoadRunner的场景控制和分析器,帮助我们更好地控制脚本加载过程,从而展现更直观有效的场景分析图表.本次将重点讨论LoadRunn ...
- 服务端性能测试校准v1.2
服务端性能测试工具校验v1.2 想知道压力工具实际并发多少,想知道压力工具统计响应数据准不准,来试试这款校准工具. 更新说明: 1.修正总接收请求显示上限. 2.随着响应时间增加,自动增加处理线程. ...
- 服务端性能测试工具校验v1.1
服务端性能测试工具校验v1.1 更新说明: 1.精简CRT运行库支持. 2.添加响应模拟测试,校验压力测试工具的响应时间统计准确性. 3.大并发请求请降低延迟时间 WEIMJSAM原创,转载请注明出处 ...
- 自行控制loadrunner的socket协议性能测试 (转)
一前言 二任务的提出 三实现方案讨论 四技术要点讲解 如何开始录制一个最简单的收发数据包脚本 写日志文件 一行一行读数据包文件 字符串转换为十六进制数据包 发送自己定义的数据包 接收数据包到自定义缓冲 ...
- 服务端性能测试工具校验v1.2
服务端性能测试工具校验v1.2 想知道压力工具实际并发多少,想知道压力工具统计响应数据准不准,来试试这款校准工具. 更新说明: 1.修正总接收请求显示上限. 2.随着响应时间增加,自动增加处理线程. ...
- LoadRunner如何进行移动端性能测试
1.录制脚本 1.1 创建脚本:新建一个用户脚本,选择Mobile Application 使用管理员身份打开VirtualUser Generator,点击[文件]->[新建脚本和解决方案], ...
- Loadrunner对https协议(单双向SSL)的web端性能测试
1.项目背景 1.1 单双向SSL的含义及部署 单向SSL即我们说到的https协议. 特点是,浏览器需要请求验证服务器证书: 基本含义是:一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务 ...
- 使用loadrunner对https协议(单双向SSL)的web端性能测试 (转)
1.项目背景 1.1 单双向SSL的含义及部署 单向SSL即我们说到的https协议. 特点是,浏览器需要请求验证服务器证书: 基本含义是:一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务 ...
- 性能测试 | Web端性能测试
这篇文章想跟大家分享关于Web性能测试的一些知识点.在分享之前,我想先跟大家分享一组数据,关于为什么要做性能测试?具体如下: 71%用户希望在手机上打开网页能跟电脑一样快: 5秒钟被认为是用户能忍受的 ...
随机推荐
- HTTP 初步知识总结
1.HTPP报文 HTTP协议以报文的格式传递数据,报文有三部分组成:起始行(对报文进行描述),首部块(包含属性),主体(包含数据,可选)所有的HTTP报文都可以分为两类:请求报文(Requset M ...
- 第二章 DateTime工具类
项目中经常需要将DateTime转化成各种格式的String类型,或将各种类型的String转为DateTime类型. 本文提供一个DateTime与String的转换工具类: import org. ...
- XE3随笔12:TSuperTableString、TSuperAvlEntry
通过 ISuperObject.AsObject 可获取一个 TSuperTableString 对象. TSuperTableString 的常用属性: count.GetNames.GetValu ...
- (Python)集合、集合的函数
本节我们将学习python的另一种数据类型:集合(set) 1.集合(set) 集合在Python中是一种没有重复元素,且无序的数据类型,且不能通过索引来引用集合中的元素 >>> b ...
- 【Map】获取字符串中,每一个字母出现的次数
package cn.itcast.p1.map.test; import java.util.Iterator; import java.util.Map; import java.util.Tre ...
- 使用my exclipse对数据库进行操作(1)
一.查找 public class class1 { public static void main(String[] args) { // TODO Auto-generated method st ...
- hdu 1231
最大连续子序列 Time Limit: 1000MS Memory Limit: 32768KB 64bit IO Format: %I64d & %I64u Submit Statu ...
- 编程之美2014挑战赛 复赛 Codehunt平台试题答案
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...
- Activity的四种启动模式详解
Activity的启动模式在清单文件AndroidManifest.xml中的Activity属性中进行设置: 如:<activity android:name=".MainActiv ...
- PHP header函数使用教程
在php语言中,header()这个函数很有用的,尤其在用到ajax时候,他会帮你解决一些意想不到的问题.下面是header的一些详细讲解.希望对phper有帮助 代码如下: <?php// f ...