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 基本操作的更多相关文章

  1. 性能测试学习第四天_Loadrunner概述

    1.Loadrunner的组成部分 ·脚本生成器VuGen:virtual user generator ·压力控制器Controller,License主要在这里控制 ·结果分析软件Analysis ...

  2. loadrunner的基本操作

    一.遗留问题: 1.controller中,到设置的时间后,仍然在运行: 2.如何对多个用例的结果进行分析,找到系统可以承受的最佳的用户数量点: 3.vuser与实际的用户访问数量是一回事吗?比如vu ...

  3. 品味性能之道<九>:利用Loadrunner编写socket性能测试脚本简述

            一.概述         Loadrunner拥有极为丰富的工具箱,供予我们制造出各种奇妙魔法的能力.其中就有此次要讨论的socket套接字操作.     二.socket概述     ...

  4. loadrunner socket协议问题归纳(0)

    一.概述         Loadrunner拥有极为丰富的工具箱,供予我们制造出各种奇妙魔法的能力.其中就有此次要讨论的socket套接字操作.     二.socket概述         soc ...

  5. Loadrunner socket协议lrs_receive函数接收到返回数据包 仍然等待服务器返回--解决

    前段时间在使用loadrunner socket协议发送数据包到到服务器,使用lrs_receive接收服务器应答数据包,已经接收到数据包,但LR仍然在等待服务器端返回,而且日志打印显示每次接收返回都 ...

  6. LoadRunner编写socket性能测试脚本

    利用LoadRunner编写socket性能测试脚本 一.概述 Loadrunner拥有极为丰富的工具箱,供予我们制造出各种奇妙魔法的能力.其中就有此次要讨论的socket套接字操作. 二.socke ...

  7. Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作

    一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...

  8. Android Notification 详解(一)——基本操作

    Android Notification 详解(一)--基本操作 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Notification 文中如有纰 ...

  9. Android Notification 详解——基本操作

    Android Notification 详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 前几天项目中有用到 Android 通知相关的内容,索性把 Android Notificatio ...

随机推荐

  1. 代码审计-extract变量覆盖

    <?php $flag='xxx'; extract($_GET); if(isset($shiyan)) { $content=trim(file_get_contents($flag)); ...

  2. 重新学习SpringMVC——基础

    2. SpringMVC_HelloWorld3. SpringMVC_RequestMapping_修饰类4. SpringMVC_RequestMapping_请求方式5. SpringMVC_R ...

  3. Netty粘包问题(六)

    netty使用tcp/ip协议传输数据,而tcp/ip协议是类似水流一样的数据传输方法.多次访问的时候可能出现粘包的问题,解决这种问题的方式有如下几种. 一.定长数据流 二.特殊结束符 三.

  4. CF13B Letter A

    CF13B Letter A 洛谷传送门 题目描述 Little Petya learns how to write. The teacher gave pupils the task to writ ...

  5. 水晶报表报错:log4net初始值问题

    运行水晶报表的程序一直出错,报错如下: System.TypeInitializationException: “CrystalDecisions.ReportSource.ReportSourceF ...

  6. Spring Cloud微服务安全实战_3-5_API安全之常见问题

    1,数据校验,解决接口层的参数校验,是api安全的前线.可以用JSR303注解进行接口层面的校验 ,参考文章:https://www.ibm.com/developerworks/cn/java/j- ...

  7. js中VO解析

    执行环境(环境) 执行环境的用处 执行环境定义了变量或函数有权访问的其他数据,每一个执行环境都存在一个关联的变量对象(VO),代码无法访问,内部解析器会使用它,如果环境为函数,则将函数的AO作为VO, ...

  8. DP问题(1) : hdu 2577

    题目转自hdu 2577,题目传送门 题目大意: 现给你n个区分大小写的字符串,大小写可用Caps Lock和shift切换(学过计算机的都知道) 但是有一点需要注意(shift是切换,若现在是大写锁 ...

  9. C++中vector小学习,顺便查了下<stdio.h>(或<cstdio>)

    今天看书,邻桌在看<C++ Primer>,拿过来看了一会儿.以前比较少用vector容器,看了下后,瞬间觉得好腻害的样子,就想试一下.嗯,就是试一下而已.(代码可能网上都差不多,有参考) ...

  10. 使用numpy处理数组

    def fun_ndarray(): a = [[1,2,7], [-6,-2,-3], [-4,-8,-55] ] b = np.array(a) b = np.abs(b)#取数组的绝对值 pri ...