一、测试过程

1.规划测试:分析应用程序、定义测试目标、方案实施。

2.创建Vuser脚本。

3.创建方案:方案包括运行 Vuser 的计算机的列表、运行 Vuser 脚本的列表以及在方案执行期间运行的指定数量的 Vuser 或 Vuser 组。

4.运行方案:可以指示多个 Vuser 同时执行任务,以模拟服务器上的用户负载。可以通过增加或减少同时执行任务的 Vuser 的数量来设置负载级别。

5.监视方案:使用 LoadRunner 联机运行时、事务、系统资源、Web 服务器资源、数据库服务器资源、网络延时、流媒体资源、防火墙服务器资源、Java 性能等、应用程序部署和中间件性能监视器来监视方案的执行。

6.分析测试结果:在方案执行期间,LoadRunner 将记录不同负载下的应用程序性能。可以使用LoadRunner 的图和报告来分析应用程序的性能。

二、VuGen介绍

LoadRunner 包含很多组件,其中最常用的有 Visual User Generator(以下简称VuGen)、Controller,Analysis。v Mercury 虚拟用户生成器 (VuGen) — 创建脚本VuGen
注意:VuGen 仅能录制 Windows 平台上的会话。但录制的 Vuser 脚本既可以在 Windows 平台上运行,也可以在 UNIX 平台上运行。
 
使用VuGen开发脚本的步骤:
*录制测试脚本
*完善测试脚本
*配置Run-Time Settings项
*单机运行测试脚本
*创建运行场景
 
1.录制测试脚本
点击开始->Mercury LoadRunner->Applications->Virtual User Generator或开始-> Mercury LoadRunner-> Mercury LoadRunner->Load Testing->Create/Edit Scripts来启 动VuGen。
 

启动VuGen后,可以选择新建单协议脚本,多协议脚本,打开脚本等;如果不想下次再显示该页,在Don’t show thestartup dialog in the future前打勾即可。
2.录制测试脚本
新建一个用户脚本,选择系统通讯的协议,这里我们需要测试的是Web应用,所以我们需要选择Web(HTTP/HTML)协议,确定后,进入主窗体。

3.设置录制选项

Application type:选择应用程序类型Internet Application
URL:输入要测试的网址
Working directory:设置工作目录
Record into Action:中选择要把录制的脚本放到哪一个部分,见意选择 Action

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

4.录制工具条介绍

点击确定之后会出现一个工具条,不同的按钮有不同的功能

录制完成后,按下“结束录制”按钮,VuGen 自动生成用户脚本,退出录制过程。
5.查看脚本

录制结束后,可以通过两种方式来查看脚本:脚本视图及树视图

脚本视图:
v脚本视图是一种基于文本的视图,列出了作为 API 函数的 Vuser 操作。要在脚本视图中查看脚本,请单击工具栏上的“View Script”按钮或者选择“View” > “View Script”。

树视图:
v树视图是基于图标的视图,列出了作为步骤的 Vuser 操作.要在树视图中查看脚本,请单击工具栏上的“View Tree”按钮或者选择“View” > “View Tree”。

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开发脚本步骤(一)的更多相关文章

  1. LoadRunner:VuGen开发脚本步骤(二)

    一.介绍 Loadrunner的场景能够描述在测试活动中发生的各种事件.一个场景包括一个运行虚拟用 户活动的Load Generator 机器列表,一个测试脚本的列表以及大量的虚拟用户和虚拟用户组 二 ...

  2. 通过HP Loadrunner VuGen来录制安卓的应用

    作者:Richard Pal       来自:perftesting           翻译:Elaine00 通过这篇文章,我将介绍如何通过HP Loadrunner VuGen来测试一个安卓应 ...

  3. myeclipse调用loadrunner函数开发测试脚本

    myeclipse调用loadrunner函数开发测试脚本 一.使用myeclipse开发性能测试脚本 1.使用Eclipse新建一个Java工程,将目录%LoadRunner_Home%\class ...

  4. Loadrunner VuGen实战---基本组成、录制流程、协议、脚本优化、参数化(三)

    一.3大基本组件:VuGen.Controller.Analysis 1.VuGen:录制.编写脚本. 2.Controller:性能测试场景设计以及监控的地方. 3.Analysis:生成图表报告的 ...

  5. 编写loadrunner的ftp脚本(详细步骤)

    大家好,主要给大家讲解编写loadrunner的ftp脚本详细步骤,及FTP函数注释,及FTP脚本两种编写方式,手动和录制.亲测 No problem!^_^ 1.首先要了解loadrunner中几个 ...

  6. Loadrunner进行性能测试的步骤

    Loadrunner 11是一款免费的性能测试工具,他包含三个大模块 •使用VuGen:创建脚本•运用Controller:设置方案•查看Analysis:分析测试结果 结合软件测试的流程可以知道使用 ...

  7. LoadRunner关联函数的脚本实例--如何操作关联参数

    LoadRunner关联函数的脚本实例--如何操作关联参数 这几天一直在学习LoadRunner的VuGen编程,今天想对关联函数web_reg_save_param做详细的试验和研究: ~f6p q ...

  8. 【原创】LoadRunner Java Vuser脚本的配置和调试指南

    1 编写目的 本文介绍了Loadrunner多负载压力机的配置,并通过测试Java Vuser的数据库连接脚本对配置结果进行了验证,同时对配置过程中遇到的问题和解决的过程进行了记录,关于Java数据库 ...

  9. Loadrunner Vugen参数列表中数据分配方法及更新值的时间9种组合说明及验证

    作为刚开始学习Loadrunner的新人,Data Assignment Method以及Update Method在相互组合之后,LR如何进行取值让我很是头疼. 于是花了一个晚上的时间认真学习官方文 ...

随机推荐

  1. Mac 开发装机必备

    ==============设置=========================== Mac 启动台图标大小调整 1.终端运行命令:10代表一行显示10个图标,几个可以自定义 defaults wr ...

  2. 4.UiCollection API 详细介绍

    一.UiCollection类介绍 UiCollection类两大功能:从集合中查找对象:获取某种搜索条件组件的数量 1.UiCollection类说明 1)UiCollection是UiObject ...

  3. find~~~查找文件

    find . -name "klibc" 在当前文件内查找文件 klibc find . -name "*libc*" 在当前文件内查找文件 (模糊查询)

  4. 配置pdo 的用户和密码,

    注意:要进入mysql命令行来操作~~~~ grant all on *.* to pdo_root@'%' identified by 'pdo_pwd'; flush privileges

  5. [USACO07FEB] Lilypad Pond

    https://www.luogu.org/problem/show?pid=1606 题目描述 FJ has installed a beautiful pond for his cows' aes ...

  6. Linux系统中各目录的作用

    /binbin是binary的缩写.这个目录沿袭了UNIX系统的结构,存放着使用者最经常使用的命令.例如cp.ls.cat,等等. /boot这里存放的是启动Linux时使用的一些核心文件. /dev ...

  7. Java 里快如闪电的线程间通讯

    这个故事源自一个很简单的想法:创建一个对开发人员友好的.简单轻量的线程间通讯框架,完全不用锁.同步器.信号量.等待和通知,在Java里开发一个轻量.无锁的线程内通讯框架:并且也没有队列.消息.事件或任 ...

  8. 使用OpenCV和Python进行人脸识别

    介绍 人脸识别是什么?或识别是什么?当你看到一个苹果时,你的大脑会立刻告诉你这是一个苹果.在这个过程中,你的大脑告诉你这是一个苹果水果,用简单的语言来说就是识别.那么什么是人脸识别呢?我肯定你猜对了. ...

  9. Go语言 6 结构体、方法和接口

    文章由作者马志国在博客园的原创,若转载请于明显处标记出处:http://www.cnblogs.com/mazg/ Go学习群:415660935 结构体(struct)是由一系列具有相同类型或不同类 ...

  10. win32的回调函数

    [转]http://blog.csdn.net/w419675647/article/details/6599070 众所周知,win32的回调函数WndProc()是操作系统调用的函数,win32用 ...