首页
学习
活动
专区
圈层
工具
发布
30 篇文章
1
loadrunner 脚本开发-基本知识
2
Loadrunner 脚本开发-利用loadrunner开发Windows Sockets协议脚本
3
Loadrunner 脚本开发-利用Loadrunner生成Web service测试脚本
4
loadrunner 脚本开发-url解码
5
loadrunner 脚本录制-Action分类
6
loadrunner 脚本开发-文件下载
7
loadrunner 脚本优化-关联设置
8
loadrunner 脚本开发- web_url函数详解
9
loadrunner 脚本优化-加密与解密
10
loadrunner 脚本优化-检查点设置
11
loadrunner 脚本优化-集合点设置
12
loadrunner 脚本优化-参数化方法
13
loadrunner 脚本开发-字符串编码转换
14
loadrunner 脚本开发-web_custom_request函数详细介绍
15
loadrunner 脚本开发-执行操作系统命令
16
loadrunner 脚本优化-关联函数web_reg_save_param()函数详解
17
Loadrunner 脚本开发-利用web_submit_data函数实现POST请求
18
loadrunner 脚本优化-参数化之Parameter List参数取值
19
loadrunner 脚本录制-Protocol Advisor协议分析器的使用
20
Loadrunner 脚本开发-从文件读取数据并参数化
21
loadrunner 脚本录制-录制选项设置HTML-based URL-based Script
22
Loadrunner 脚本开发-利用web_custom_request函数进行接口测试
23
Loadrunner 脚本开发-soap_request函数介绍及WebService接口测试
24
loadrunner 脚本开发-int型变量和字符串的相互转换
25
loadrunner 脚本优化-参数化之场景中的参数化取值
26
Loadrunner脚本优化-参数化之关联MySQL数据库获取数据
27
loadrunner 脚本开发-调用java jar文件远程操作Oracle数据库测试
28
Loadrunner脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试
29
loadrunner 运行脚本-命令行运行脚本
30
loadrunner 脚本开发-参数化之将内容保存为参数、参数数组及参数值获取

loadrunner 脚本优化-参数化之Parameter List参数取值

脚本优化-参数化之Parameter List参数取值

by:授客 QQ:1033553122

参数取值选项

Select next row

Update value on

以上两个选项是改变参数化取值的关键选项。

Select next row包含如下选项:

Sequential:顺序选择

Random:随机取值

Unique:唯一值

Update value on包含以下选项:

Each iteration:每次迭代更新。

Each occurrence:每次取值更新

Once:只更新一次

1 Sequential+Each iteration取值

这种取值是按顺序的,即按照Parameter List中记录的先后顺序从上往下取值,当记录取完后,再重新从记录头开始取值,而Each iteration是基于Run-timesettings->Run Logic中的迭代次数完成记录变化操作的。

例子:

Action3()

{

lr_eval_string("{NewParam}");

return 0;

}

迭代次数1:NewParam取值 甲

迭代次数5:NewParam取值 甲|乙|丙|丁|戊

迭代次数6:NewParam取值 甲|乙|丙|丁|戊|甲

注意:Update on value on Each iteration时,只有开始了新的一次迭代,也就是说回放日志中出现了Starting iteration才会触发记录变化,否则取值内容均不变化

例如:迭代次数为2

Action3()

{

for (int i=0;i<2;i++)

代码语言:txt
复制
{
代码语言:txt
复制
 lr\_eval\_string("{NewParam}");

}

return 0;

}

NewParam取值 甲甲乙乙

2 Sequential+Each occrrence取值

按顺序取值,即按照Parameter List中记录的先后顺序从上往下取值,当记录取完后,再重新从记录头开始取值,而Each occrrence只要取了一次参数值,参数值就变化,取下一个参数值

例子:

Action3()

{

lr_eval_string("{NewParam}");

lr_eval_string("{NewParam}");

return 0;

}

如果迭代次数 1:NewParam取值 甲|乙

如果迭代次数 2:NewParam取值 甲|乙|丙|丁

3 Sequential+Once取值

按顺序取值,即按照Parameter List中记录的先后顺序从上往下取值,当记录取完后,再重新从记录头开始取值,而Once针对整个脚本来说,只要取了一次参数值,参数值就不再变化了

Action3()

{

lr_eval_string("{NewParam}");

return 0;

}

无管迭代多少次,或者for循环,NewParam取值都是甲

4 Random+Each iteration取值

VuGen会从参数列表中随机取出一条记录,其取值的次数受到Update value on选项的限制。

Random+Each iteration:每当一次新的Starting iteration开始,重新从参数列表中取一次随机值。

5 Random+Each occurrence

每当取一次该参数值,从参数列表中重新取一次随机值

6 Random+Once

当第一次取到随机内容后,再不更新记录。

7 Unique取值

一种更高级的顺序取值,强调取值的唯一性,但是违反了该规则也能继续运行,VuGen提供了When out of values选项来处理非唯一的情况【当且仅当Update value on Each iteration,Update value on Each occurrence, When out of values才可以用】

其中,update value on和上面的意思一样,不再赘述

When out of values

1)Abort Vuser

当参加参数取值超出参数表记录的条数时,忽略用户脚本,停止运行脚本

2)Continue in a cyclic manner

当参数取值超出参数表记录时,使用循环扫描的方式

3)Continue with last value

当参数取值超出参数表记录时,使用参数表中的最后一个值

列子:

Action3()

{

lr_eval_string("{NewParam}");

return 0;

}

迭代6次

小技巧:有时候,需要手工将参数的值下移一位(不管是不是Update value on Each iteration),怎么办?使用lr_advance_param()函数来解决这个问题,

例子:前面脚本的参数{NewParam},Sequential+Each iteration,使用脚本:

lr_eval_string(“{Newparam}”);

lr_eval_string(“{Newparam}”);

运行结果 甲|甲

lr_eval_string(“{Newparam}”);

lr_advance_param(“Newparam”);

lr_eval_string(“{Newparam}”);

运行结果 甲|乙

阅读下篇:

脚本优化-参数化之Parameter List参数同行取值

下一篇
举报
领券