- 集合点
- 事务
- 检查点
- 思考时间
- 关联
------------------------------------------------
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个选项之一:
- 当所有虚拟用户中的X%到达集合点时释放,即仅当指定百分比的虚拟用户到达集合点时,才释放虚拟用户。
- 当所有正在运行的虚拟用户中的X%到达集合点时释放:仅当场景中指定百分比的正在运行的虚拟用户到达集合点时,才释放虚拟用户。
- 当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、关联
所谓关联,就是把脚本中某些写死的数据转变成动态的数据。