LoadRunner:VuGen开发脚本步骤(一)
一、测试过程
1.规划测试:分析应用程序、定义测试目标、方案实施。
2.创建Vuser脚本。
3.创建方案:方案包括运行 Vuser 的计算机的列表、运行 Vuser 脚本的列表以及在方案执行期间运行的指定数量的 Vuser 或 Vuser 组。
4.运行方案:可以指示多个 Vuser 同时执行任务,以模拟服务器上的用户负载。可以通过增加或减少同时执行任务的 Vuser 的数量来设置负载级别。
5.监视方案:使用 LoadRunner 联机运行时、事务、系统资源、Web 服务器资源、数据库服务器资源、网络延时、流媒体资源、防火墙服务器资源、Java 性能等、应用程序部署和中间件性能监视器来监视方案的执行。
6.分析测试结果:在方案执行期间,LoadRunner 将记录不同负载下的应用程序性能。可以使用LoadRunner 的图和报告来分析应用程序的性能。
二、VuGen介绍


3.设置录制选项

VuGen 中的脚本分为三部分:vuser_init、vuser_end 和Action。其中vuser_init 和vuser_end 都只能存在一个,不能再分割,而Action 还可以分成无数多个部分(通过点击New 按钮,新建ActionXXX) “Record the application startup”默认情况下是选中的,说明应用程序一旦启动,VuGen 就会开始录制脚本;如果没有选中,应用程序启动后,VuGen 出现右边的对话框,并且暂时不会开始录制脚本,用户操作应用程序到需要录制的地方,按下“Record”按钮,VuGen 才开始录制。
4.录制工具条介绍
点击确定之后会出现一个工具条,不同的按钮有不同的功能
录制结束后,可以通过两种方式来查看脚本:脚本视图及树视图


6.完善测试脚本
6.1 事物
事务为衡量服务器的性能,需要定义事务。
当录制完一个基本的用户脚本后,在正式使用前我们还需要完善测试脚本,增强脚本 的灵活性。例如,可以在脚本中插入名为内容检查的步骤,以验证某些特定内容是否显示 在返回页上。可以修改脚本来模拟多用户行为,也可以用事务来 度量特定的业务流程。
事务(Transaction):为了衡量服务器的性能,我们需 要定义事务。比如:我们在脚本中有一个数据查询操作, 为了衡量服务器执行查询操作的性能,我们把这个操作定 义为一个事务,这样在运行测试脚本时,LoadRunner 运 行到该事务的开始点时,就会开始计时,直到运行到该事 务的结束点,计时结束。这个事务的运行时间会在结果中 显示。 插入事务操作可以在录制过程中进行,也可以在录制 结束后进行。LoadRunner 运行在脚本中插入不限数量的事务。
6.2插入事物
在菜单中单击Insert->Start Transaction后,输入事务名称,也可在录制过程中进行,在需要定义事务的操作后面插入事务的“结束点”。
输入事务的名称。注意:事务的名称最好要有意义,能够清楚的说明该事务完成的动作。
插入事务的开始点后,在需要定义事务的操作后面插入事务的“结束点”。同样可以通过菜单或者工具栏插入
默认情况下,事务的名称列出最近的一个事务名称。一般情况下,事务名称不用修改。事务的状态默认情况下是LR_AUTO。一般情况下,我们也不需要修改状态的
6.3插入集合点
插入集合点是为了衡量在加重负载的情况下服务器的性能情况。 在测试计划中,可能会要求系统能够承受1000 人同时提交数据,在LR 中可以通过在提交数据操作前面加入集合点,当虚拟用户运行到提交数据的集合点时,LR 就会检查同时有多少用户运行到集合点,从而达到测试计划中的需求。
具体的操作方法如下:在需要插入集合点的前面,点击菜单Insert->Rendezvous,也可在录制时按插入集合点按钮 注意:集合点经常和事务结合起来使用。集合点只能插入到Action 部分,vuser_init和vuser_end 中不能插入集合点。
7.单机运行测试脚本
执行“运行”命令后,VuGen 先编译脚本,检查是否有语法等错误。如果有错误,Vu Gen将会提示错误。双击错误提示,VuGen 能够定位到出现错误的那一行。如果编译通 过,就会开始运行。然后会出现运行结果。

LoadRunner:VuGen开发脚本步骤(一)的更多相关文章
- LoadRunner:VuGen开发脚本步骤(二)
一.介绍 Loadrunner的场景能够描述在测试活动中发生的各种事件.一个场景包括一个运行虚拟用 户活动的Load Generator 机器列表,一个测试脚本的列表以及大量的虚拟用户和虚拟用户组 二 ...
- 通过HP Loadrunner VuGen来录制安卓的应用
作者:Richard Pal 来自:perftesting 翻译:Elaine00 通过这篇文章,我将介绍如何通过HP Loadrunner VuGen来测试一个安卓应 ...
- myeclipse调用loadrunner函数开发测试脚本
myeclipse调用loadrunner函数开发测试脚本 一.使用myeclipse开发性能测试脚本 1.使用Eclipse新建一个Java工程,将目录%LoadRunner_Home%\class ...
- Loadrunner VuGen实战---基本组成、录制流程、协议、脚本优化、参数化(三)
一.3大基本组件:VuGen.Controller.Analysis 1.VuGen:录制.编写脚本. 2.Controller:性能测试场景设计以及监控的地方. 3.Analysis:生成图表报告的 ...
- 编写loadrunner的ftp脚本(详细步骤)
大家好,主要给大家讲解编写loadrunner的ftp脚本详细步骤,及FTP函数注释,及FTP脚本两种编写方式,手动和录制.亲测 No problem!^_^ 1.首先要了解loadrunner中几个 ...
- Loadrunner进行性能测试的步骤
Loadrunner 11是一款免费的性能测试工具,他包含三个大模块 •使用VuGen:创建脚本•运用Controller:设置方案•查看Analysis:分析测试结果 结合软件测试的流程可以知道使用 ...
- LoadRunner关联函数的脚本实例--如何操作关联参数
LoadRunner关联函数的脚本实例--如何操作关联参数 这几天一直在学习LoadRunner的VuGen编程,今天想对关联函数web_reg_save_param做详细的试验和研究: ~f6p q ...
- 【原创】LoadRunner Java Vuser脚本的配置和调试指南
1 编写目的 本文介绍了Loadrunner多负载压力机的配置,并通过测试Java Vuser的数据库连接脚本对配置结果进行了验证,同时对配置过程中遇到的问题和解决的过程进行了记录,关于Java数据库 ...
- Loadrunner Vugen参数列表中数据分配方法及更新值的时间9种组合说明及验证
作为刚开始学习Loadrunner的新人,Data Assignment Method以及Update Method在相互组合之后,LR如何进行取值让我很是头疼. 于是花了一个晚上的时间认真学习官方文 ...
随机推荐
- Drivers Dissatisfaction 最小生成树+LCA
题意:给一张n个点m条边的连通图,每条边(ai,bi)有一个权值wi和费用ci, 表示这条边每降低1的权值需要ci的花费.现在一共有S费用可以用来降低某些边的权值 (可以降到负数),求图中的一棵权值和 ...
- @Springboot搭建项目controller层接收json格式的对象失败
今天在使用swagger2测试的时候出错 1.@requestBody注解常用来处理content-type不是默认的application/x-www-form-urlcoded编码的内容,比如说: ...
- C++类成员空间分配和虚函数表
最近在自学python,看到继承和类,就顺便复习了C++的类和继承等方面的知识. 先看Base基类 class Base { private: virtual void display() { cou ...
- Libevent学习笔记(四) bufferevent 的 concepts and basics
Bufferevents and evbuffers Every bufferevent has an input buffer and an output buffer. These are of ...
- 【题解】【LibreOJ Round #6】花团 LOJ 534 时间线段树分治 背包
Prelude 题目链接:萌萌哒传送门(/≧▽≦)/ Solution 如果完全离线的话,可以直接用时间线段树分治来做,复杂度\(O(qv \log q)\). 现在在线了怎么办呢? 这其实是个假在线 ...
- jquery ajax thinkphp异步局部刷新完整流程
环境:ThinkPHP3.2.3,jQuery3.2 前言: 在一般的网站中,都需要用到jquery或者其他框架(比如angular)来处理前后端数据交互,thinkphp在后台也内置了一些函数用 ...
- Java常量池详解之Integer缓存
一个Java question,求输出结果 public class IntegerTest { public static void main(String[] args) { objPoolT ...
- fastjson的@JSONField注解的一点问题
@JSONField 看源码它可以作用于字段和方法上. 引用网上说的, 一.作用Field @JSONField作用在Field时,其name不仅定义了输入key的名称,同时也定义了输出的名称. 但是 ...
- oschina ios开发学习
应该跟android版的类似,例如服务器端在oschina-prefix.pch里 #define api_news_list @"http://www.oschina.net/action ...
- python-num18 - django进阶一
一.深入django的路由系统 下面为django的请求生命周期 下面来看下整个生命周期中的路由系统: 在Django的urls中我们可以根据一个URL对应一个函数名来定义路由规则如下: " ...