loadrunner 基本操作
1.录制(录制选项)
2.回放(运行时设置)
3.添加事物
4.参数化
5.内容检查
6.添加集合点
1.在脚本中添加集合点函数如下:
lr_rendezvous("集合点") //添加集合点
2、打开Controller (控制器),导入录制的脚本。
3、菜单栏 Scenario ---> Rendezvous 打开集合点设置界面
4. 设置界面中Vusers 列表框里有10个集合点(1~10),这里的数量和我们设置的虚拟用户数一致,可以对数量进行修改
5.点击“Policy...”来设置集合点的策略,一般选择第二个,第一个会干扰场景的设置
下面来看看这三种策略的含义:
Release when :当所有虚拟用户中的x % 到达集合点进释放,即仅当指定百分比的虚拟用户到达集合点时,才释放虚拟用户。
注意:此选项将会干扰场景的计划。如果选择此选项,场景将不按计划运行。
Release when :当所有正在运行的虚拟用户中的x %到达集合点时释放,即仅当场景中指定百分比的、正在运行的虚拟用户到达集合点时,才释放虚拟用户。
还有不在运行的虚拟用户? 假如,设置为1分钟启动一个用户,当然会存在因为用户还没启动,所以无法参与集合点。
Release when : 当x 个虚拟用户到达集合点时释放,即仅当指定数量的虚拟用户到达集合点时,才释放虚拟用户。
这个很好理解,当我用百分比不太好衡量集合点的虚拟用户数,当然可以设置具体的用户数。
Timeout between Vusers (虚拟用户之间的超时)框中输入一个超时值。
假如设置了集合10用户并发,结果9个用户已经集合到位,还剩1个虚拟用户,左等右等就是等不来。那总不能一直等下去吧。设定了个时间,假如30秒还不来,那就不管它了。
超时的时长默认是30秒,我们可以根据具体的被测应用进行调整。
7.手动关联的过程大致如下:
1. 在tree视图的action中,选择第一个右击选择insert before
2.add step->services->web-reg-save-param函数
3.填入参数名,Left Boundary , Right Boundary,search in 可填可不填
比如 参数名:login
Left Boundary :userSession value=
Right Boundary:>
4.把关联内容参数化,用已填入的参数名{login}
5.把函数尽量放在脚本action的最前面
6.验证脚本有没有关联成功
8.ip欺骗
1.控制面板->网络连接->右击属性->internet协议->属性
2.取消自动获取,选择使用下面的ip地址和DNS服务器地址
获取地址的方式为:运行->cmd->ifconfig /all 获取所需地址
3.打开 HP loadrunner->tools- >IP wizard
4.第一个是创建新的设置,第二个从哪里获取,第三个恢复把之前的取消操作,一般选择第一个
5.下一步点击add添加,选择classC类,选中最下面验证所设网络有没有被使用,点击完成,在cmd中ipconfig验证是否创建成功
6.脚本页面的设置:1.用本机的IP地址,不能用172.0.0.1或者localhost;添加事物(脚本中必须有一个事物)2.在run time setting中设置log选择框里的三个扩展日志勾选上3.在run time setting中设置
miscellaneous中设置线程,中间选项第二个
7.在user generator中点击tools ,创建场景
8.在Controller打开场景,选择enable ip spoofer
9.在tools中选择expert mode(开发调试模式),option->general->第二个IP线程
10.运行场景,在弹出的对话框里,选中用户右击可以查看用户日志(show vuser log)
11.测试完成 要释放掉IP,否则ip占用,别人无法上网。
9.加压机(负载生成器)
负载生成器:每生成一个用户,需花费加压机大约2M-3M,占据内存70%,会造成系统的性能下降,所以主机很少用作
加压机,需要多个加压机生成用户一起工作。
负载生成器的工作多有其他装有LR Agent 的PC机来担任,然后通过一台主机来运行。
本机负载生成器的操作:
1.在负载界面,点击load Generators(负载生成器)->add(添加)
2.在name中输入localhost或者172.0.0.1->点击OK
3.点击connect,右下角查看有雷达图标显示
连接其它的负载生成器
1.在其它PC机上的设置,程序->HR loadrunner->Advanced settings->Agent configuration(代理设置)->enable teminal services(启用终端服 务)->右下角查看有雷达图标显示
2.在本机上连接其它的负载生成器,打开load Generators(负载生成器)->add(添加)->name(输入负载生成器的IP地址)->打开more
3.打开more->run time quota(运行时配额) 或者unix环境下->unix environment->勾选don't usr RSH->OK,点击connect连接
负载生成器的设置
1.在controller界面打开run-time setting(运行时设置)(手动场景时打开方式->场景组->第四个图标)
2.在pacing中,选择第二个随机迭代方式
在log中,选择Extended log(扩展日志)中的第二个data returned by server(服务器返回的数据)调试完后返回 standard log(标准日志)
在think time中选 replay think time(重播思考时间)中第三个(使用录制思考时间的百分比)
在其他中,勾选第一个“出现错误时仍继续”
在preference(首选项)中,如果设置文本检查点的话,勾选第一个Enable image and text check(启用图像和文本检查)
在preference(首选项)中->options->设置超时时间
10.手动场景和目标场景
打开手动场景和目标场景进行目标场景的编辑,运行界面编辑windows资源添加度量。 注意:选择不更改录制思考时间
loadrunner 基本操作的更多相关文章
- 性能测试学习第四天_Loadrunner概述
1.Loadrunner的组成部分 ·脚本生成器VuGen:virtual user generator ·压力控制器Controller,License主要在这里控制 ·结果分析软件Analysis ...
- loadrunner的基本操作
一.遗留问题: 1.controller中,到设置的时间后,仍然在运行: 2.如何对多个用例的结果进行分析,找到系统可以承受的最佳的用户数量点: 3.vuser与实际的用户访问数量是一回事吗?比如vu ...
- 品味性能之道<九>:利用Loadrunner编写socket性能测试脚本简述
一.概述 Loadrunner拥有极为丰富的工具箱,供予我们制造出各种奇妙魔法的能力.其中就有此次要讨论的socket套接字操作. 二.socket概述 ...
- loadrunner socket协议问题归纳(0)
一.概述 Loadrunner拥有极为丰富的工具箱,供予我们制造出各种奇妙魔法的能力.其中就有此次要讨论的socket套接字操作. 二.socket概述 soc ...
- Loadrunner socket协议lrs_receive函数接收到返回数据包 仍然等待服务器返回--解决
前段时间在使用loadrunner socket协议发送数据包到到服务器,使用lrs_receive接收服务器应答数据包,已经接收到数据包,但LR仍然在等待服务器端返回,而且日志打印显示每次接收返回都 ...
- LoadRunner编写socket性能测试脚本
利用LoadRunner编写socket性能测试脚本 一.概述 Loadrunner拥有极为丰富的工具箱,供予我们制造出各种奇妙魔法的能力.其中就有此次要讨论的socket套接字操作. 二.socke ...
- Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作
一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...
- Android Notification 详解(一)——基本操作
Android Notification 详解(一)--基本操作 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Notification 文中如有纰 ...
- Android Notification 详解——基本操作
Android Notification 详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 前几天项目中有用到 Android 通知相关的内容,索性把 Android Notificatio ...
随机推荐
- oracle查看被锁的表及解除锁
-- 查看被锁对象 select object_name,machine,s.sid,s.serial# from v$locked_object l,dba_objects o ,v$session ...
- Mybatis-Plus Bugs
Mybatis-Plus Bugs 实体类中属性和数据库字段对应异常 Caused by: java.sql.SQLSyntaxErrorException: Unknown column 'user ...
- Java编译期与运行期
编译期:是指把源码交给编译器编译成计算机可以执行的文件的过程.在Java中也就是把Java代码编成class文件的过程.编译期只是做了一些翻译功能,并没有把代码放在内存中运行起来,而只是把代码当成文本 ...
- vue中使用kindeditor富文本编辑器2
第一步,下载依赖 yarn add kindeditor 第二步,建立kindeditor.vue组件 <template> <div class="kindeditor& ...
- [LeetCode] 69. Sqrt(x) 求平方根
Implement int sqrt(int x). Compute and return the square root of x, where x is guaranteed to be a no ...
- 第09组 Beta冲刺(2/5)
队名:观光队 链接 组长博客 作业博客 组员实践情况 王耀鑫 过去两天完成了哪些任务 文字/口头描述 学习 展示GitHub当日代码/文档签入记录 接下来的计划 完成短租车,页面美化 还剩下哪些任务 ...
- C++ 中文乱码的问题
乱码的根本原因就是字符串编码的方式也字符串解码方式不一致导致的, 而在我们平常用的编码编码方式一般都是utf-8以gbk之间的相互转换, 下面给出编码方式的转换代码 string UtfToStrin ...
- Spring Boot下Bean定义方式及调用方式
我们知道如果我们要在一个类使用spring提供的bean对象,我们需要把这个类注入到spring容器中,交给spring容器进行管理,但是在实际当中,我们往往会碰到在一个普通的Java类中,想直接使用 ...
- RICOH C4502彩色打印机取消双面打印功能
参考下面步骤:
- LeetCode 118:杨辉三角 II Pascal's Triangle II
公众号:爱写bug(ID:icodebugs) 作者:爱写bug 给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行. Given a non-negative index k whe ...