回想起第一次做性能测试,感慨万千,故写下本文,从:设置虚拟用户,设置场景以及分析运行结果三个方面进行阐述

硬件环境:硬盘 1TG,cpu 3.40GHz,内存4G

软件环境:IE9.0,Weblogic12c ,Orace 12  

网络环境:  100M带宽

测试工具:LR11

首先,load Generator机器必须使用固定的IP,不能使用动态IP,确定网络中不冲突的IP地址。

1、开始—程序—loadrunner—tools—ip wizard.

说明:增加新IP选择第一项;使用保存的文件增加IP选择第二项;释放已经设置的IP选择第三项。

点“下一步”,此处是输入web server的IP地址,不输入,直接点‘下一步’。说明:使用remove按钮可以删除选定的虚拟IP。

2、点add按钮,

说明:“检查新IP是否已经存在”选项并没有起作用,根据输入的IP的第一个值和数量,自动添加到虚拟IP列表中,例如:192.168.1.111,则增加的虚拟IP是:192.168.1.111、192.168.67.112、192.168.1.113、192.168.1.114。点ok按钮,点“完成”按钮。

现在需要重启计算机。

(重新启动计算机后,设置的虚拟IP都生效了,此时使用ping会发现都能ping通,并且本机的IP也被改成了第一个虚拟IP地址。确认虚拟IP是否都生效的方法:在运行中输入cmd,在命令窗口录入ipconfig/all,然后就能看到已经生效的所有IP。)

使用虚拟IP(以手动方案为例)

在controller中,选择 Scenario—Enable IP Spoofer,此项设置允许使用IP欺骗。按Generators按钮,设置虚拟用户生成器,将虚拟IP地址都添加进去,并连通。连接成功的虚拟用户生成器会在工具栏中显示。然后设计方案,运行方案。

使用虚拟IP测试完成后 ,打开IP Wizard,释放所有虚拟IP,重新启动计算机。

场景要求

1、      每个网页打开的时间为5s

2、      每10s增加5个用户,然后每10s减少5个用户(实际测试中可根据实际性能需求进行设置)

3、      持续时间为5分钟

4、      每个用户迭代次数为5次,(在这思考时间不做设置)

场景设置

1、 开始—程序—loadrunner

2、 直接选择第二个run load test,在此我们使用默认第一个,第一个是手动场景,(第二个是面向目标场景),添加录制好了的脚本,点击add。

3、 现在我们进行运行时间设置。

a、     在打开对话框中,选择第一个,运行逻辑(run logic), 在这里面输入我们要设置的迭代次数,这里我们设置为2。

b、     下面我们选择步(pacing)的设置,在此我们选择通过此节点可以控制迭代之间的时间。可以将此时间指定为随机时间。这将准确模拟用户在操作之间等待的实际时间设置,但在随机时间间隔下,您看不到实际用户在重复操作之间等待恰好为5 秒的情况。(也就是选择第三个)。

c、     现在进行日志(log)的设置,“日志”设置指示运行测试时要记录的信息详细级别。开发期间,出于调试目的,可以选择启用某级别的日志记录,但验证脚本可以正常工作后,仅可以启用或禁用错误日志记录。

d、     现在进行思考时间设置(think time),思考时间有2种,一种是忽略思考时间,一种是重播思考时间。由于在现实中是不可能没有思考时间的,如果不设置思考时间,脚本就会快速的通过,所以我们可以设置思考时间的百分比,或者选中,来限制我们的思考时间,在此我们设置思考时间为10s。

e、     点击OK关闭运行时间设置。

4、  更改组名以及 Vuser数。双击场景卡中的脚本。将打开“组信息”(add group)对话框。在“组名”框中,输入一个名称,例如 xzchinamobile _agent。在“Vuser 数量”框中,输入 10。这是将在localhost 负载生成器中运行的 Vuser数。

5、 现在到场景设计界面上来了,在界面上我们可以看到当前选择的脚本以及保存的位置。现在我们点击来编辑场景。

6、 计划名就由我们自己修改,当然也可以不做修改。在场景编辑计划页面上选择按场景计划,然后按照场景要求在下面的选项卡中分别设置。不过要把下面的勾起,因为初始化表示为负载测试的运行准备 Vuser 和负载生成器。加压前初始化 Vuser 可以减少 CPU 消耗并有助于提供更加真实的结果。至于持续时间这块也一直困扰了我一段时间,后来找资料才弄清楚,如果设置了持续时间,测试将运行该持续时间内必需实现的迭代次数,而不管测试的运行时设置中设置的迭代次数。并且是加压完成后运行那么久的时间。

7、 现在我们设置虚拟用户加压过程,,选择第一个就表示同时加载所有的虚拟用户。我们这里选择第二个,定期启动 Vuser 允许您检查站点上 Vuser 负载随时间逐渐增加,并可以帮助您确定系统响应时间减慢的准确时间点。最后就按照上面的要求设置虚拟用户。

8、 设置完场景后,单击OK,完成场景设计。 然后界面上的,来到运行主界面上。也可以直接点击界面上的直接运行。

9、 现在就等运行结果啦。也可以点击运行界面上的查看用户运行情况。

结果分析

对平均响应时间梯度对比图,事务分布对比图,资源监控图进行分析。

 

总结

   通过一段时间的学习发现,结合LR自带的使用手册,以及在网上找的N多资料,多看学习视频,然后多动手操作。慢慢的LR的一些操作步骤就会做的,所谓熟能生巧就是这回事情,至于分析结果这块所涉及的东西很多,这个要靠长期的经验的积累和学习。坚持做做多学多问,就很收获良多。加油!

 

 

loadrunner负载测试实例的更多相关文章

  1. Loadrunner经典测试实例

    Loadrunner经典测试实例

  2. LoadRunner压力测试实例

    1 LoadRunner 概要介绍... 2 .项目背景介绍... 5 .使用LoadRunner进行负载/ 实施测试... 16 6.1 Memory相关... 22 6.2 Processor相关 ...

  3. 转:能和LoadRunner匹敌的VS2010/2012Web负载测试

    原文出处:http://www.cnblogs.com/aarond/archive/2013/04/18/performance.html VS自带的Web负载测试真的很大程度上能和专业的loadr ...

  4. Loadrunner常用目录、组成部分及负载测试流程

    常用目录 bin:存放一些可执行程序 classes:可能用到的jar包 My Template:存放一些自己创建的模板 include:头文件(可以编写自定义函数,保存成.h的头文件形式并放在这个目 ...

  5. 在大负载中使用LoadRunner进行负载测试()

    在大负载中使用LoadRunner进行负载测试,需要配置一些环境来满足大负载下各种资源的充足: 1.为了避免出现“No Buffer Space Available”的错误,需要进行如下配置: 1)修 ...

  6. loadrunner(预测系统行为和性能的负载测试工具)

    LoadRunner,是一种预测系统行为和性能的负载测试工具.通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试.企业使用LoadRu ...

  7. windows使用nginx实现网站负载均衡测试实例

    如果你关注过nginx,必定知道nginx这个软件有什么用的,如果你的网站访问量越来越高,一台服务器已经没有办法承受流量压力,那就增多几台服务器来做负载吧.做网站负载可以买硬件设备来实现,比如F5,不 ...

  8. LR12.53—第4课:准备Vuser脚本进行负载测试

    第4课:准备Vuser脚本进行负载测试 在前面的课程中,您确认您的Vuser脚本的回放产生了真正的用户的精确仿真.下一个步骤是准备的脚本负载测试.如何将多用户系统同时工作的工作?会拖慢系统到不可接受的 ...

  9. SignalR系列续集[系列8:SignalR的性能监测与服务器的负载测试]

    目录 SignalR系列目录 前言 也是好久没写博客了,近期确实很忙,嗯..几个项目..头要炸..今天忙里偷闲.继续我们的小系列.. 先谢谢大家的支持.. 我们来聊聊SignalR的性能监测与服务器的 ...

随机推荐

  1. UNIX 和 LINUX

    UNIX操作系统(尤尼斯),是一个强大的多用户.多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统,最早由KenThompson.DennisRitchie和DouglasMcI ...

  2. 结构体类型定义(C语言)

    结构体的定义形式如下: struct 结构体名 { 结构体成员 }: 结构体变量的定义方式有三种:1.先定义结构体,再定义变量: eg. struct student{ char name[10]; ...

  3. 64位 ubuntu android studio gradle 权限不够 缺少文件和权限导致

    安装 32位  库文件 sudo apt-get install lib32z1 给文件夹加权限 chmod 777 -R SDK chmod 777 -R android-studio -R表示所有 ...

  4. php中json_encode UTF-8中文乱码问题

    最近在接口代码当中用到过json_encode,在网上找到说json_encode编码设置为UTF-8中文就不会乱码,经验证这办法确实是有效果的,但是不知道为什么,代码在用过一段时间之后就不太管用了. ...

  5. SVG 2D入门12 - SVG DOM

    使用脚本可以很方便的完成各种复杂的任务,也是完成动画和交互的一种主流方式.由于SVG是html的元素,所以支持普通的DOM操作,又由于SVG本质上是xml文档,所以也有一种特殊的DOM操作,大多称之为 ...

  6. 三部曲二(基本算法、动态规划、搜索)-1006-The Same Game

    The Same Game Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 4585   Accepted: 1699 Des ...

  7. POJ-1182 分组并查集

    今天刚发现,之前做的并查集只是贴模板基本就能过,题意改变一点,自己还是不懂,其实我还没入门呢... 题意:食物链,A吃B,B吃C,C吃A,输入m组数据: 1 a b:a 和 b 是同一类 2 a b: ...

  8. OD调试篇8

    那么今天需要破解的呢,是这样一款软件. 程序刚刚进去会发现一个nag弹窗   说没有注册,要花20美金才能注册.只有5天的限制期限可以用了 进去之后 点击help里的关于这款软件   也显示了这是一个 ...

  9. spring整合hibernate配置文件

    Spring对hibernate配置文件hibernate.cfg.xml的集成,来取代hibernate.cfg.xml的配置 spring对hibernate配置文件hibernate.cfg.x ...

  10. IOS UIWebView引用外部CSS样式(转载)

    首先,将要引用的CSS样式导入到工程文件,然后我们可以自己拼装一个网页并引用这个样式,具体代码实现如下: -(void)viewDidLoad { [super viewDidLoad]; NSStr ...