LoadRunner相关概念解析

  • 集合点
  • 事务
  • 检查点
  • 思考时间
  • 关联

------------------------------------------------

1、集合点

集合点用以同步虚拟用户,以便恰好在同一时刻执行任务。在测试计划中,可能会要求系统能够承受1000 人同时提交数据,在LoadRunner 中可以通过在提交数据操作前面加入集合点,这样当虚拟用户运行到提交数据的集合点时,LoadRunner 就会检查同时有多少用户运行到集合点,如果不到1000 人,LoadRunner 就会命令已经到集合点的用户在此等待,当在集合点等待的用户达到1000 人时,LoadRunner 命令1000 人同时去提交数据,从而达到测试计划中的需求。

集合点插入方式:手动或者菜单两种方式

手动:在脚本中输入lr_rendezvous("集合点----");

菜单:录制好脚本后在,单击脚本中要插入集合点的位置→选择Insert--Rendevous...→输入集合点的名称→单击OK即可

集合点的使用:

  • 集合点添加成功后,保存脚本。在使用LoadRunner的Controller进行负载时,可以执行【Scenario】>【Rendezvous】,显示集合总信息对话框。
  • 从集合点列表中选择某个集合点后,单机【√Enable Rendezous】或【×Disable Rendezous】设置是否允许启用或者禁止某个集合点,也可以选择某个虚拟用户后,单机【Disable VUser白色】或【Disable VUser灰色】允许或者禁止某个集合点上一个虚拟用户参与集合。
  • 集合点的设计策略【重点】:单机【policy】,显示集合点策略对话框。

         在“策略”部分可以选择下列3个选项之一:

  1. 所有虚拟用户中的X%到达集合点时释放,即仅当指定百分比的虚拟用户到达集合点时,才释放虚拟用户。
  2. 所有正在运行的虚拟用户中的X%到达集合点时释放:仅当场景中指定百分比的正在运行的虚拟用户到达集合点时,才释放虚拟用户。
  3. X个虚拟用户到达集合点时释放:仅当指定数量的虚拟用户到达集合点时,才释放虚拟用户。

2、事务

事务是指服务器响应虚拟用户请求所用的时间。一个完整的事务由事务开始、事务结束以及一个或多个业务操作/任务构成,形式如下

 

插入事务有两种方式,一种是手工方式(ctrl+t,ctrl+d),另一种是利用菜单或者工具条。

注意:

  • 事务必须成对出现,即一个事务有事务开始,必然要求也有事务结束。
  • 事务结束函数包括两个参数,第一个参数是事务的名称,第二个参数是事务的状态。
    • 事务状态可以为LR_PASS,,返回“Succeed”代码;
    • LR_FAIL,返回“fail”代码;
    • LR_STOP,返回“Stop”代码;
    • LR_AUTO自动返回检测到的代码。
  • 在应用事务的过程中,不要将思考时间(lr_think_time函数)放在事务开始和事务结束之间,否则在设置允许回放思考时间的情况下,思考时间将被算入事务的执行时间,从而影响了对事务正确执行时间的分析与统计。

3、检查点

        插入检查点的根本目的是验证测试过程中的步骤是否被正确执行,也可理解为事务是否被正确执行,只有这样才能保证后期分析数据的正确性。

录制脚本后要做的事情:

一、插入检查点

二、通过检查点判断事务结束状态

检查点参数格式:

web_reg_find("Search=Body",//定义查找范围

"SaveCount=num",//定义查找计数器变量名

"Text=jiancha", //定义要查找的内容

LAST);

接下来判断变量num的值

//将检查的内容(jiancha)保存在变量num中,接下来要判断变量no的值是否大于或等于1,如果大于等于1,那么将登录事物结束状态设为LR_PASS,反之结束状态设置为LR_FAIl

if (atoi(lr_eval_string("{num}"))>0){

     lr_end_transaction("login",LR_PASS);

}

else{

      lr_end_transaction("login",LR_FAIL);

}

4、思考时间

用户在执行两个连续操作期间等待的时间称为思考时间。lr_think_time()

5、关联

所谓关联,就是把脚本中某些写死的数据转变成动态的数据。

猜你喜欢

转载自blog.csdn.net/python_jeff/article/details/88735748