loadrunner之 学习七:controller创建负载测试场景

学习七:controller创建负载测试场景

1.遇到问题:

在打开controller的时候遇到了问题,弹出报错框:

试图执行系统不支持的操作。

确定之后又弹出:

runtime Error!

Program: xx\xx\xx\wlrun.exe

abnormal program termination

确定之后controller便被关闭了。

百度之后也没有看到真正的解决方案,没人知道是什么原因导致,我猜想可能是破解出了问题,于是采用下面的步骤重新破解:

  1. 在控制面板中右键选择loadrunner,进行修复,修复之后loadrunner会恢复破解前的状态
  2. 关闭杀毒软件,不要打开loadrunner
  3. 将lm70.dll,mlr5lprg.dll复制到loadrunner\bin\下
  4. 用deletelicense.exe清理注册表
  5. 打开loadrunner,添加globa-100 license ‘AEAMAUIK-YAFEKEKJJKEEA-BCJGI’
  6. 再添加web-10000 license ‘AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB’
  7. 关闭loadrunner,重新打开controller,加载脚本,正常启动

并不适用所有情况,但也是一个解决思路,之前用的license只用添加一次就能够完成globa-100和web-10000的注册,而且安装前期没有关闭杀毒软件,可能的原因无非几种:

  • 安装是没有关闭杀毒软件,软件安装不正确
  • 安装包有问题,不完整
  • 安装路径有问题,中文之类的
  • license有问题
  • 之前装过,没有清理干净
  • 缺少必要的C++库
  • 与其他软件的冲突

一个个尝试去找解决方案吧。

如果在修复之后直接去添加license,会出现如下错误:

license security violation.Operation is not allowed

先把lm70.dll,mlr51prg.dll复制到bin,在执行deletelicense.exe,然后再打开loadrunner添加license即可。

2.loadrunner的基本结构与流程解析

这一部分应该是放在最开始来学习的,个人有一点基础,所以直接去编写了脚本,到了controller这一步,再来深入地学习理解一下LR的整体结构

其实从LR在开始菜单中的目录结构就能看出来,LR的Applications分为三部分:

  1. Virtual User Generator
  2. Controller
  3. Analysis

这也是LR的主要流程,其他的有一个Launcher,相当于一个统一的入口。还有个Agent,是LR自带的一个小订票程序,用来练习。剩下的就是一些示例和文档了

我们主要用到Applications的三个应用:

我们先来看一下性能测试的基本流程,然后再看LR是怎么样对照我们的流程进行实现的:

  1. 首先我们要制定计划,确定测试点,比如说我们要测试登录。
  2. 然后我们需要确定测试目标,多少人同时登录,要求达到什么指标。
  3. 最后,我们测试完成拿到数据之后,我们要看是否达到了指标,实际能达到什么水平。

这样的流程下来,我们发现LR的三个Application正好对应这三个阶段:

  1. 测试点的确定意味着我们能够确定一个vuser需要做的操作,我们通过Virtual User Generator能够录制或编写出对应的脚本;
  2. 测试目标的确定,让我们能够确定vuser数量,每个vuser进行的操作,在多少台机器上进行操作等,我们通过Controller就能管理这些并执行测试;
  3. 最后拿到数据以后,Analysis又能让我们对数据进行分析,看是否达到了想要的测试效果。

3.controller场景组分配generator压力

为了模拟真实情况,controller可以设置不同的场景组,每一个场景组可以指定不同的脚本,进行不同的操作。

在场景组中还能设定每个场景组的vuser数量,以及每一个组的vuser 是由哪个generator生成。

genetator是用来生成vuser的生成器,因为每个vuser都要占用一定系统资源,如果想要模拟太大数量的vuser,一台机器是无法实现的。这时,LR可以通过多台机器来创建vuser,同时向服务器加压。

generator在load generator中进行管理,名称即generator的IP,添加之后,需要连接之后才可以用。在场景组中为不同的group选用generator。

4.controller场景计划模拟真实加压

真实情况下,一般不会所有用户同时登录,我们需要对vuser的进入退出制定一个计划,在场景计划中,我们可以通过场景计划表和交互计划图来制定计划。

初始化即执行脚本中的vuser_init,在vuser开始运行之前对其进行初始化可以减少CPU占用量,有利于提供更加真实的结果。

在启动vuser时,可以指定是同时启动还是逐渐启动,逐渐启动可以设置每多长时间启动几个vuser,来模拟真实情况

持续时间设置后,脚本在这段时间内会持续迭代,而不会只运行Run-Time Settings里设置的迭代次数

建议设置逐渐停止vuser,以帮助应用程序到达阀值后,检测内存漏洞并检查系统恢复情况

5.Run-Time Settings运行时设置

打开VuGen的‘Vuser’ — ‘Run-Time Settings’(在controller的设计面板中也可以打开该设置),会弹出运行时设置对话框,我们可以修改运行时的一些设置来更真实的模拟用户场景。

  • 运行逻辑:可设置迭代次数,但如果在controller中设置了脚本的持续时间之后,这里的设置将失效

  • 步:每次迭代之后的等待时间

  • 日志:测试期间收集的信息级别

  • 思考时间:用户在各步骤之间停下来思考的时间,这一步的设置对模拟用户真实的操作很重要

  • 速度模拟:模拟用户不同的网络情况

  • 首选项 - 检查:因为进行检查点检查会消耗一定的系统资源,所以LR默认关闭了图像和文本检查,这就是很多人添加了检查点但是发现没有反应的原因。

其他的设置暂时不进行详细学习。

6.监控负载下的系统

我们希望实时了解应用程序的性能以及潜在的瓶颈。LR为我们提供了一套监控器来监控服务器或组件的性能。可以配置WEB服务器监控器,Windows资源监控器等。

在controller的运行面板内,默认有四张图,其中一张就是Windows资源监控器:

  1. 右键单击“Windows资源图”,选择“添加度量”,打开“Windows资源”对话框。
  2. 在“监控的服务器计算机”中点击“添加” ,打开“添加计算机”对话框。
  3. 填入计算机信息,“名称”中填写要监控的服务器的IP或机器名,并选择平台。
  4. 完成后看到显示出能够监控的资源项,可以在这里对要监控的资源项进行管理,然后点击“确定”。即可激活windows资源监视器

参考资源

《 HP Loadrunner Tutorial 11.0 》

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值