LoadRunner Controller

时间:2021-08-23 18:56:50

1、Controller的引入

1)需要Controller的原因?需要多个用户来模拟并发的时候。

2)一种强大的、成熟的工具的体现。

2、 Controller的启动方式

1)LoadRunner Launcher - Run Load Tests

LoadRunner Controller

2)在开始菜单中

LoadRunner Controller

3)在VuGen中

LoadRunner Controller

LoadRunner Controller

一般controller放一台机器,负载生成器放另外一台机器。因为controller负责协调和收集负载生成器的信息。如果再用它去做负载,可能收集到的数据会不准。

百分比模式:

LoadRunner Controller

多个脚本运行时,不需要给每个脚本指定多少个用户。会以百分比的形式自动分配。

LoadRunner Controller

非百分比模式

LoadRunner Controller

LoadRunner Controller

场景模式:对所有组进行统一设置。

组模式:对每个组进行单独设置:选中哪一个组,就可以对那个组进行单独的设置。

LoadRunner Controller

LoadRunner Controller

运行模式

实际计划:有时候网站访问量白天多,晚上少,这种模式可以模拟高峰低谷。一般长时间做稳定性测试用这个。一般情况还是用基本计划。

LoadRunner Controller

基本计划:

LoadRunner Controller

一般压测设置:

LoadRunner Controller

LoadRunner Controller

Controller中的运行时设置

1)与VuGen中的不同,各自有各自的,不要认为是同一个

2)Think time默认设置的不同

3)系统日志,真正运行的时候就设置成仅仅当错误时才发送,提高效率。

4)事务的设置

5)带宽的设置

但是controller里面的设置,是controller里面的,vuser是vuser里面的。需要分开设置。

可以每个group单独设置,也可以选中多个group一起设置。

注意这几个地方

LoadRunner Controller

LoadRunner Controller

LoadRunner Controller

LoadRunner Controller

 关于迭代

如果持续时间大于脚本迭代时间,action在持续的时间内一直迭代。

LoadRunner Controller

LoadRunner Controller

在运行的时候,关注哪些数据,可以直接从左边拖到右边来。不关注的数据,也可以右键删除。

LoadRunner Controller

也可以右键进行配置。

LoadRunner Controller

运行过程中,可以增加用户。

LoadRunner Controller

运行中,各个状态

LoadRunner Controller

LoadRunner Controller

init:正在执行vuser_init

stoped:

LoadRunner Controller

负载生成器3

lr可以将负载生成器装到负载机中。

LoadRunner ControllerLoadRunner Controller

启动agent服务LoadRunner Agent Server 对应进程 magentservice.exe 我本机没找到

负载生成器的使用要保证负载生成器自己不要成为瓶颈。

mmdrv解析

真正运行时,是mmdrv这个进程在跑。

以线程的方式运行。50个线程用1个mmdrv。也就是说如果有101个线程,会启动3个mmdrv。会共享内存,可能会遇到一些错误。

LoadRunner Controller

以进程的方式运行。虚拟用户数和mmdrv是一一对应的。有多少个虚拟用户数,就有多少个mmdrv进程。对于代码来说,这种方式更安全,但是更浪费资源。

IP Spoofer和集合点

IP欺骗(IP Spoofer)

1) 为什么需要IP Spoofer?因为不管用多少个用户,用了都是同一个ip。对于有些网站,对请求频繁的ip,可能会做一些处理。比如屏蔽。这个时候,就需要使用多个ip。模拟真实的场景。

2) 如何使用IP Spoofer?

Action()
{
char *ip;
ip=lr_get_vuser_ip(); //只有controller里面发挥作用。
if (ip) {
lr_output_message("ip地址为:%s",ip);
}
else
{
lr_output_message("IP欺骗关闭");
}
return ;
}

设置2个用户跑一次。查看log。产生2个日志。说明1个用户生成1个日志

LoadRunner Controller

LoadRunner Controller

输出:Action.c(10): IP欺骗关闭 [MsgId: MMSG-17999]

打开ip欺骗。

LoadRunner Controller

继续运行 输出:Action.c(6): ip地址为:192.168.188.216 [MsgId: MMSG-17999]。 2个log只有1个IP

设置IP

LoadRunner Controller

不能选自动获得IP,然后点击高级添加IP地址。无线需要断开连接,在重新连接wifi。

LoadRunner Controller

可以看到这个时候有3个IP地址。

再次运行脚本。查看log

Action.c(6): ip地址为:192.168.28.104 [MsgId: MMSG-17999]

Action.c(6): ip地址为:192.168.28.105 [MsgId: MMSG-17999]

可以看出,2个虚拟用户用了不同的IP地址。

lr提供了工具用于快速生成IP

LoadRunner Controller

11、Controller中的集合点

脚本如下

Action()
{
lr_think_time();
lr_rendezvous("jgd");
lr_think_time();
return ;
}

controller检查到脚本中有集合点函数。可以在这里进行设置。

LoadRunner Controller

LoadRunner Controller

LoadRunner Controller

LoadRunner Controller当rendez为设置的虚拟用户数时,同时执行。

 自定义数据采集、lr_user_data_point解析

用这个函数,记录自己的数据,进行分析。用这个函数记录样本名和值。样本次数自动统计。可以去拿自己想要的数据。并在controller里进行分析。

Action()
{
int i;
for (i=;i<;i++) {
lr_user_data_point("cpu",i);
lr_think_time(0.5);
}
return ;
}

2个用户跑。

LoadRunner Controller

LoadRunner Controller的更多相关文章

  1. Loadrunner Controller运行不了,提示cannot create Vusers

    执行场景时显示: Loadrunner Controller cannot create Vusers.Ensure that your load generators are available a ...

  2. 如何使用Loadrunner Controller 监控服务器的系统资源

    (1)保证装有loadrunner Controller的控制机和被监控的目标机(服务器)之间能够ping通,在同一个网段内,保证两台机器用administrator登陆. (2)Win + R, s ...

  3. LoadRunner Controller 常见用法

    Controller 工作原理:通过场景设计来模拟用户的真实操作并调用vugen中的脚本,再通过设置的压力机产生压力 Scenario-convert scenario to the percenta ...

  4. Loadrunner基础:Loadrunner Controller基本概念和使用

    Loadrnner Controller 介绍 当Vuser脚本开发完成以后,可以使用Controller将这个执行脚本的用户从单用户转化为多用户,从而模拟大量用户的操作,形成负载(多用户单循环,多用 ...

  5. win10运行LoadRunner Controller遇到的坑

    第一次在win10上运行性能测试,结果 解决方法: 后来在同事的win10电脑上安装lr11后,竟然可以运行成功,哈哈,看到希望了,不用再安装回win7了,发现他的系统版本是win10企业版,而我的是 ...

  6. loadrunner controller如何执行测试

    使用Virtual User Generator编写需要测试的脚本   打开controller,在左侧的available scripts里选择需要测试的脚本添加(Add)到scripts in s ...

  7. LoadRunner Controller: 压力机

    前提条件 1. 压力机所在的机器上装了LR agent ,并启用了. 运行下图所示程序,即可启动.启动之后状态栏会出现卫星小图标 2. Controller所在机器的RPC服务开启. 打开运行 –&g ...

  8. Loadrunner - Controller - policy - 设置集合点策略

    控制器中设置集合点策略                                                        我们在Virtual User Generator 中回放脚本无法 ...

  9. LoadRunner Controller集合点策略灰色问题 解决

    1.脚本里已经添加了集合点,但是在Controller里集合点策略是灰色的无法点击 2.问题解决: 将下图的勾选项去掉即可(系统默认是勾选上的) 去掉勾选后可以选择了:

随机推荐

  1. 学的一点点ps

    从C语言的代码中解脱开始学ps,看到色彩鲜明的东西,心里只有那么爽.哈哈.只学习3天,虽然只是一些皮毛,可还是学到了一些以前不知道的东西.让我对ps多了很多兴趣,决定以后要自学更多的ps技能.要给图片 ...

  2. windows下pycharm远程调试pyspark

    参考http://www.mamicode.com/info-detail-1523356.html1.远端执行:vi /etc/profile添加一行:PYTHONPATH=$SPARK_HOME/ ...

  3. 第三天 Java语言基础

    一.三元运算符 三元运算符,也称为三目运算符或问号冒号运算符.即有三个表达式参与的运算表达式.既然是个运算符,那么运算完必须有运算结果. 1)三元运算符的格式 (表达式1)?表达式2:表达式3: 2) ...

  4. IntelliJ IDEA 性能优化

    idea打开的多了 内存占用也就多了 下边是亲试的优化ide性能的方法 1.设置JVM的启动参数: 进入idea的安装目录的bin文件夹 打开 idea.exe.vmoptions 文件, 修改-Xm ...

  5. Win10手记-为应用集成SQLite&lpar;二&rpar;

    接上篇内容,这里给大家分享我的辅助访问类,采用了异步方法,封装了常用的访问操作,一些操作还是纯CLI的. SQLiteDBManager using System; using System.Coll ...

  6. HDU 1934 特殊数字

    有两种车牌号.让你判断第二种是不是在第一种之后且在第一种出Kth之前的车牌号. 本解中是把前面的字母看成一位十进制的数.自己是一个26或者21进制的数.如果比较时有两种.那么第一种和第一种的最后一个比 ...

  7. dubbo客户端源码分析&lpar;一&rpar;

    rpc框架有很多,公司自研.开源的thrift.dubbo.grpc等.我用过几个框架,了解了一下实现原理,客户端基本都是用代理实现,jdk动态代理.cglib等.最近一段时间想了解一下dubbo源码 ...

  8. cookie加密

    Cookie中的数据以文本的形式存在客户端计算机,考虑它的安全性,最好在将数据存入Cookie之前对其进行加密. 加密的方法很多,比较简单一点的有:Base64,md5,sha等,而相对比较复杂一点的 ...

  9. mysql游标的用法及作用

    1当前有三张表A.B.C其中A和B是一对多关系,B和C是一对多关系,现在需要将B中A表的主键存到C中:常规思路就是将B中查询出来然后通过一个update语句来更新C表就可以了,但是B表中有2000多条 ...

  10. Python—元组(戴上了枷锁的列表)

    一.概念 元组属于不可变序列,元组是包含多个元素的类型,元素之间用逗号分割.例如:t1=123,456,“hello”元组可以是空的,t2=()元组包含一个元素时:t3=123,元组外侧可以使用括号, ...