目录
- 为什么使用参数化
- 属性详解
- Select next row
- Sequential(顺序)
- Random(随机)
- Unique(唯一)
- Same line as XXX(和XXX属性的取值方式一样)
- Update value on
- Each iteration(每次迭代时取值)
- Each Occurrence(每次遇到该参数时取值)
- Once(仅取一次值)
- 实验
- 单参数 user ,单次调用,单用户
- 通用设置
- 参数化文件准备
- 场景设置
- Action代码
- Sequential & Each Iteration
- 先说结论
- 参数设置
- 精简日志
- Sequential & Each occurrence
- 先说结论
- 参数设置
- 精简日志
- Sequential & Once
- 先说结论
- 参数设置
- 精简日志
- Random & Each Iteration
- 先说结论
- 参数设置
- 精简日志
- Random & Each occurrence
- 先说结论
- 场景设置
- 精简日志
- Random & Once
- 先说结论
- 场景设置
- 精简日志
- Unique & Each Iteration
- 先说结论
- 参数设置
- 精简日志
- Unique & Each occurrence
- 先说结论1
- 场景设置1
- 精简日志1
- 先说结论2
- 参数设置2
- 精简日志2
- Unique & Once
- 先说结论
- 参数设置
- 精简日志
- 单参数 user ,单次调用,多用户
- 通用设置
- 参数化文件准备
- 场景设置
- Action代码
- Sequential & Each iteration
- 先说结论
- 参数设置
- 精简日志
- Sequential & Each occurrence
- 先说结论
- 参数设置
- 精简日志
- Sequential & Each iteration
- 先说结论
- 参数设置
- 精简日志
- Random & Each iteration
- 先说结论
- 参数设置
- 精简日志
- Random & Each occurrence
- 先说结论
- 参数设置
- 精简日志
- Random & Once
- 先说结论
- 参数设置
- Unique & Each iteration
- 先说结论
- 参数设置
- Unique & Each occurrence
- 先说结论
- 参数设置
- Unique & Once
- 先说结论
- 参数设置
- 单参数 user ,多次调用,单用户
- 通用设置
- 参数文件准备
- 场景设置
- Action代码
- Sequential & Each iteration
- 先说结论
- 参数设置
- Sequential & Each occurrence
- 先说结论
- 参数设置
- Sequential & Once
- 先说结论
- 参数设置
- Random & Each iteration
- 先说结论
- 参数设置
- Random & Each occurrence
- 先说结论
- 参数设置
- Random & Once
- 先说结论
- 参数设置
- Unique& Each iteration
- 先说结论
- 参数设置
- Unique& Each Occurrence
- 先说结论
- 参数设置
- Unique& Once
- 先说结论
- 参数设置
- 单参数 user ,多次调用,多用户
- 通用设置
- 参数文件准备
- 场景设置
- Action代码
- Sequential & Each iteration
- 先说结果
- 参数设置
- Sequential & Each occurrence
- 直接说结果
- Sequential & Once
- 直接说结果
- Random & Each iteration
- 直接说结果
- Random & Each occurrence
- 直接说结果
- Random & Once
- 直接说结果
- Random & Once
- 先说结果
- Unique & Each iteration
- 先说结果
- 参数设置
- Unique & Each occurrence
- 先说结果
- 参数设置
- Unique &Once
- 先说结果
- 参数设置
近期使用lr做性能测试的时候用参数化比较多,对于一些属性属实给干懵了,特整理篇文档以供参考。
为什么使用参数化
- 对于不能重复登录的用户,参数化是一个很好的解决方法
- 不可输入重复值
- 自动化测试
- 脚本复用性
属性详解
首先明确两个常用属性的意义:
Select next row:选择下一行的方式,how,如何取,更新值的时候的取值是如何取的
Update value on:更新值的时机,when,何时用,什么情况下进行值的更新
Select next row
Sequential(顺序)
按照参数文件,依次向下取值
Random(随机)
随机取值
Unique(唯一)
按照一个特定的顺序取值
Same line as XXX(和XXX属性的取值方式一样)
如果脚本中有多个参数化,则会出现这一选项,顾名思义,就是和“XXX”参数的取值方式一样。
Update value on
Each iteration(每次迭代时取值)
每次迭代的时候取新值
Each Occurrence(每次遇到该参数时取值)
每次遇到该参数的时候取新值
Once(仅取一次值)
取一次值,之后按照取到的值执行
仅凭上述文字无法看出实际运行结果,下面来看几个实战例子。
实验
本文中使用的是2021社区版本的LoadRunner。
迭代三次。
样例参数为:用户、code、日期。
加上输出调试配合日志查看运行效果。
结合日志查效果更明显
日志设置:
单参数 user ,单次调用,单用户
通用设置
参数化文件准备
user.bat:user001-user005
场景设置
迭代三次,单用户
Action代码
lr_start_transaction("test");
lr_output_message("\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=");
lr_output_message("第一个参数用户:%s",lr_eval_string("{user}"));
lr_output_message("\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=");
lr_end_transaction("test", LR_AUTO);
return 0;
Sequential & Each Iteration
先说结论
第一次迭代:user001
第二次迭代:user002
第三次迭代:user003
参数设置
精简日志
在原有日志上筛选出结果内容。
Running Vuser... [MsgId: MMSG-15964]
Starting iteration 1. [MsgId: MMSG-15968]
Starting action Action. [MsgId: MMSG-15919]
Action.c(4): Notify: Transaction "test" started. [MsgId: MMSG-16999]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(4): Notify: Transaction "test" started. [MsgId: MMSG-16999]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(4): Notify: Transaction "test" started. [MsgId: MMSG-16999]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user003 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Ending Vuser... [MsgId: MMSG-15966]
Sequential & Each occurrence
先说结论
第一次迭代:user001
第二次迭代:user002
第三次迭代:user003
参数设置
精简日志
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(4): Notify: Transaction "test" started. [MsgId: MMSG-16999]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user003 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Sequential & Once
先说结论
第一次迭代:user001
第二次迭代:user002
第三次迭代:user003
参数设置
精简日志
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Random & Each Iteration
先说结论
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值
第一次迭代:user004
第二次迭代:user002
第三次迭代:user004
参数设置
精简日志
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user004 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user004 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Random & Each occurrence
先说结论
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值
第一次迭代:user005
第二次迭代:user003
第三次迭代:user005
场景设置
精简日志
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user005 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user003 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user005 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Starting action vuser_end. [MsgId: MMSG-15919]
Ending action vuser_end. [MsgId: MMSG-15918]
Random & Once
先说结论
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值,但三次迭代的都是同一个值
第一次迭代:user002
第二次迭代:user002
第三次迭代:user002
场景设置
精简日志
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Unique & Each Iteration
先说结论
第一次迭代:user001
第二次迭代:user002
第三次迭代:user003
参数设置
精简日志
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user003 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Unique & Each occurrence
先说结论1
第一次迭代:user001
第二次迭代:user001
第三次迭代:user001
场景设置1
精简日志1
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
先说结论2
第一次迭代:user001
第二次迭代:user002
第三次迭代:user003
参数设置2
精简日志2
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user003 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
关于When Out Of Values(值不够时)
只有在选择Unique & Each iteration 和 Unique & Occurrence的时候才会触发
- Abort Vuser:不再执行脚本,并报错:Error: Parameter ‘user’: No more unique values for this parameter in table ‘xxx.dat’ [unique range is 1-“表中的最大值”]. The Vuser is aborted according to “When Out Of Values” policy
- Continue in a cyclic manner:从第一行开始循环取值
- Continue with last value:重复取最后一个值
Unique & Once
先说结论
第一次迭代:user001
第二次迭代:user001
第三次迭代:user001
参数设置
精简日志
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
单参数 user ,单次调用,多用户
通用设置
参数化文件准备
user.bat:user001-user015
场景设置
迭代三次,5用户
Action代码
lr_start_transaction("test");
lr_output_message("\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=");
lr_output_message("第一个参数用户:%s",lr_eval_string("{user}"));
lr_output_message("\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=");
lr_end_transaction("test", LR_AUTO);
return 0;
Sequential & Each iteration
先说结论
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | user001 | user001 | user001 | user001 | user001 |
2 | user002 | user002 | user002 | user002 | user002 |
3 | user003 | user003 | user003 | user003 | user003 |
参数设置
精简日志
Vuser1
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user003 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Vuser2
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user003 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Vuser3~5也是一样
Sequential & Each occurrence
先说结论
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | user001 | user001 | user001 | user001 | user001 |
2 | user002 | user002 | user002 | user002 | user002 |
3 | user003 | user003 | user003 | user003 | user003 |
参数设置
精简日志
Vuser1
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user003 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Vuser2
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user003 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Vuser3~5也是一样
Sequential & Each iteration
先说结论
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | user001 | user001 | user001 | user001 | user001 |
2 | user001 | user001 | user001 | user001 | user001 |
3 | user001 | user001 | user001 | user001 | user001 |
参数设置
精简日志
Vuser1
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Vuser2
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Vuser3~Vuser5也是一样
Random & Each iteration
先说结论
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | user007 | user007 | user002 | user012 | user014 |
2 | user004 | user006 | user001 | user011 | user013 |
3 | user004 | user004 | user015 | user008 | user006 |
参数设置
精简日志
Vuser1
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user007 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user004 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user004 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Vuser2
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user007 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user006 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user004 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Vuser3
Starting iteration 1. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user002 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 1. [MsgId: MMSG-15965]
Starting iteration 2. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user001 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 2. [MsgId: MMSG-15965]
Starting iteration 3. [MsgId: MMSG-15968]
Action.c(7): ========================================== [MsgId: MMSG-17999]
Action.c(8): 第一个参数用户:user015 [MsgId: MMSG-17999]
Action.c(12): ========================================== [MsgId: MMSG-17999]
Ending iteration 3. [MsgId: MMSG-15965]
Vuser4~Vuser5略
Random & Each occurrence
先说结论
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | user005 | user004 | user002 | user006 | user004 |
2 | user004 | user014 | user010 | user005 | user003 |
3 | user006 | user001 | user003 | user015 | user008 |
参数设置
精简日志
和Random & Each iteration类似,都是随机的,不再赘述
Random & Once
先说结论
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值,但三次迭代的都是同一个值
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | user014 | user009 | user010 | user003 | user003 |
2 | user014 | user009 | user010 | user003 | user003 |
3 | user014 | user009 | user010 | user003 | user003 |
参数设置
Unique & Each iteration
先说结论
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | user001 | user004 | user007 | user010 | user013 |
2 | user002 | user005 | user008 | user011 | user014 |
3 | user003 | user006 | user009 | user012 | user015 |
参数设置
Unique & Each occurrence
先说结论
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | user001 | user004 | user007 | user010 | user013 |
2 | user002 | user005 | user008 | user011 | user014 |
3 | user003 | user006 | user009 | user012 | user015 |
参数设置
Unique & Once
先说结论
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | user001 | user002 | user003 | user004 | user005 |
2 | user001 | user002 | user003 | user004 | user005 |
3 | user001 | user002 | user003 | user004 | user005 |
参数设置
单参数 user ,多次调用,单用户
通用设置
参数文件准备
user.dat:user001~user015
场景设置
Action代码
lr_start_transaction("test");
lr_output_message("\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=");
lr_output_message("第一个参数用户:%s",lr_eval_string("{user}"));
lr_output_message("第二个参数用户:%s",lr_eval_string("{user}"));
lr_output_message("第三个参数用户:%s",lr_eval_string("{user}"));
lr_output_message("第四个参数用户:%s",lr_eval_string("{user}"));
lr_output_message("\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=");
lr_end_transaction("test", LR_AUTO);
return 0;
Sequential & Each iteration
先说结论
迭代次数\调用顺序 | 第一次 | 第二次 | 第三次 | 第四次 |
---|---|---|---|---|
1 | user001 | user001 | user001 | user001 |
2 | user002 | user002 | user002 | user002 |
3 | user003 | user003 | user003 | user003 |
参数设置
Sequential & Each occurrence
先说结论
迭代次数\调用顺序 | 第一次 | 第二次 | 第三次 | 第四次 |
---|---|---|---|---|
1 | user001 | user002 | user003 | user004 |
2 | user005 | user006 | user007 | user008 |
3 | user009 | user010 | user011 | user012 |
参数设置
Sequential & Once
先说结论
迭代次数\调用顺序 | 第一次 | 第二次 | 第三次 | 第四次 |
---|---|---|---|---|
1 | user001 | user001 | user001 | user001 |
2 | user001 | user001 | user001 | user001 |
3 | user001 | user001 | user001 | user001 |
参数设置
Random & Each iteration
先说结论
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值,但同次迭代的选值是一样的
迭代次数\调用顺序 | 第一次 | 第二次 | 第三次 | 第四次 |
---|---|---|---|---|
1 | user015 | user015 | user015 | user015 |
2 | user009 | user009 | user009 | user009 |
3 | user001 | user001 | user001 | user001 |
参数设置
Random & Each occurrence
先说结论
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值
迭代次数\调用顺序 | 第一次 | 第二次 | 第三次 | 第四次 |
---|---|---|---|---|
1 | user003 | user015 | user013 | user008 |
2 | user002 | user015 | user008 | user004 |
3 | user014 | user001 | user001 | user005 |
参数设置
Random & Once
先说结论
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值,但每次选值都是同一个值
迭代次数\调用顺序 | 第一次 | 第二次 | 第三次 | 第四次 |
---|---|---|---|---|
1 | user009 | user009 | user009 | user009 |
2 | user009 | user009 | user009 | user009 |
3 | user009 | user009 | user009 | user009 |
参数设置
Unique& Each iteration
先说结论
迭代次数\调用顺序 | 第一次 | 第二次 | 第三次 | 第四次 |
---|---|---|---|---|
1 | user001 | user001 | user001 | user001 |
2 | user002 | user002 | user002 | user002 |
3 | user003 | user003 | user003 | user003 |
参数设置
Unique& Each Occurrence
先说结论
迭代次数\调用顺序 | 第一次 | 第二次 | 第三次 | 第四次 |
---|---|---|---|---|
1 | user001 | user002 | user003 | user004 |
2 | user005 | user006 | user007 | user008 |
3 | user009 | user010 | user011 | user012 |
参数设置
Unique& Once
先说结论
迭代次数\调用顺序 | 第一次 | 第二次 | 第三次 | 第四次 |
---|---|---|---|---|
1 | user001 | user001 | user001 | user001 |
2 | user001 | user001 | user001 | user001 |
3 | user001 | user001 | user001 | user001 |
参数设置
单参数 user ,多次调用,多用户
通用设置
参数文件准备
user.dat:user001~user100
场景设置
5用户,迭代三次
Action代码
lr_start_transaction("test");
lr_output_message("\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=");
lr_output_message("一:%s",lr_eval_string("{user}"));
lr_output_message("二:%s",lr_eval_string("{user}"));
lr_output_message("三:%s",lr_eval_string("{user}"));
lr_output_message("四:%s",lr_eval_string("{user}"));
lr_output_message("\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=");
lr_end_transaction("test", LR_AUTO);
return 0;
Sequential & Each iteration
先说结果
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 |
2 | 一:user002 二:user002 三:user002 四:user002 | 一:user002 二:user002 三:user002 四:user002 | 一:user002 二:user002 三:user002 四:user002 | 一:user002 二:user002 三:user002 四:user002 | 一:user002 二:user002 三:user002 四:user002 |
3 | 一:user003 二:user003 三:user003 四:user003 | 一:user003 二:user003 三:user003 四:user003 | 一:user003 二:user003 三:user003 四:user003 | 一:user003 二:user003 三:user003 四:user003 | 一:user003 二:user003 三:user003 四:user003 |
参数设置
Sequential & Each occurrence
直接说结果
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | 一:user001 二:user002 三:user003 四:user004 | 一:user001 二:user002 三:user003 四:user004 | 一:user001 二:user002 三:user003 四:user004 | 一:user001 二:user002 三:user003 四:user004 | 一:user001 二:user002 三:user003 四:user004 |
2 | 一:user005 二:user006 三:user007 四:user008 | 一:user005 二:user006 三:user007 四:user008 | 一:user005 二:user006 三:user007 四:user008 | 一:user005 二:user006 三:user007 四:user008 | 一:user005 二:user006 三:user007 四:user008 |
3 | 一:user009 二:user010 三:user011 四:user012 | 一:user009 二:user010 三:user011 四:user012 | 一:user009 二:user010 三:user011 四:user012 | 一:user009 二:user010 三:user011 四:user012 | 一:user009 二:user010 三:user011 四:user012 |
Sequential & Once
直接说结果
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001一 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 |
2 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 |
3 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 | 一:user001 二:user001 三:user001 四:user001 |
Random & Each iteration
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值,但每次action选值都是同一个值
直接说结果
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | 一:user004 二:user004 三:user004 四:user004 | 一:user009 二:user009 三:user009 四:user009 | 一:user009 二:user009 三:user009 四:user009 | 一:user006 二:user006 三:user006 四:user006 | 一:user001 二:user001 三:user001 四:user001 |
2 | 一:user007 二:user007 三:user007 四:user007 | 一:user005 二:user005 三:user005 四:user005 | 一:user014 二:user014 三:user014 四:user014 | 一:user002 二:user002 三:user002 四:user002 | 一:user007 二:user007 三:user007 四:user007 |
3 | 一:user008 二:user008 三:user008 四:user008 | 一:user005 二:user005 三:user005 四:user005 | 一:user012 二:user012 三:user012 四:user012 | 一:user003 二:user003 三:user003 四:user003 | 一:user010 二:user010 三:user010 四:user010 |
Random & Each occurrence
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值
直接说结果
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | 一:user005 二:user006 三:user004 四:user008 | 一:user056 二:user078 三:user012 四:user002 | …… | …… | …… |
2 | …… | …… | …… | …… | …… |
3 | …… | …… | …… | …… | …… |
Random & Once
直接说结果
每次场景运行都不一样,因为是随机取值,下面的结果仅为博主运行结果,非固定值,但同一Vuser都是同一个值
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | 一:user038 二:user038 三:user038 四:user038 | 一:user042 二:user042 三:user042 四:user042 | 一:user001 二:user001 三:user001 四:user001 | 一:user095 二:user095 三:user095 四:user095 | 一:user077 二:user077 三:user077 四:user077 |
2 | 一:user038 二:user038 三:user038 四:user038 | 一:user042 二:user042 三:user042 四:user042 | 一:user001 二:user001 三:user001 四:user001 | 一:user095 二:user095 三:user095 四:user095 | 一:user077 二:user077 三:user077 四:user077 |
3 | 一:user038 二:user038 三:user038 四:user038 | 一:user042 二:user042 三:user042 四:user042 | 一:user001 二:user001 三:user001 四:user001 | 一:user095 二:user095 三:user095 四:user095 | 一:user077 二:user077 三:user077 四:user077 |
Random & Once
先说结果
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | 一:user038 二:user038 三:user038 四:user038 | 一:user042 二:user042 三:user042 四:user042 | 一:user001 二:user001 三:user001 四:user001 | 一:user095 二:user095 三:user095 四:user095 | 一:user077 二:user077 三:user077 四:user077 |
2 | 一:user038 二:user038 三:user038 四:user038 | 一:user042 二:user042 三:user042 四:user042 | 一:user001 二:user001 三:user001 四:user001 | 一:user095 二:user095 三:user095 四:user095 | 一:user077 二:user077 三:user077 四:user077 |
3 | 一:user038 二:user038 三:user038 四:user038 | 一:user042 二:user042 三:user042 四:user042 | 一:user001 二:user001 三:user001 四:user001 | 一:user095 二:user095 三:user095 四:user095 | 一:user077 二:user077 三:user077 四:user077 |
Unique & Each iteration
先说结果
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | 一:user001 二:user001 三:user001 四:user001 | 一:user004 二:user004 三:user004 四:user004 | 一:user007 二:user007 三:user007 四:user007 | 一:user010 二:user010 三:user010 四:user010 | 一:user013 二:user013 三:user013 四:user013 |
2 | 一:user002 二:user002 三:user002 四:user002 | 一:user005 二:user005 三:user005 四:user005 | 一:user008 二:user008 三:user008 四:user008 | 一:user011 二:user011 三:user011 四:user011 | 一:user014 二:user014 三:user014 四:user014 |
3 | 一:user003 二:user003 三:user003 四:user003 | 一:user006 二:user006 三:user006 四:user006 | 一:user009 二:user009 三:user009 四:user009 | 一:user012 二:user012 三:user012 四:user012 | 一:user015 二:user015 三:user015 四:user015 |
参数设置
Unique & Each occurrence
先说结果
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | 一:user001 二:user002 三:user003 四:user004 | 一:user007 二:user008 三:user009 四:user010 | 一:user013 二:user014 三:user015 四:user016 | 一:user019 二:user020 三:user021 四:user022 | 一:user025 二:user026 三:user027 四:user028 |
2 | 一:user005 二:user006 三:user006 四:user006 | 一:user011 二:user012 三:user012 四:user012 | 一:user017 二:user018 三:user018 四:user018 | 一:user023 二:user024 三:user024 四:user024 | 一:user029 二:user030 三:user030 四:user030 |
3 | 一:user006 二:user006 三:user006 四:user006 | 一:user012 二:user012 三:user012 四:user012 | 一:user018 二:user018 三:user018 四:user018 | 一:user024 二:user024 三:user024 四:user024 | 一:user030 二:user030 三:user030 四:user030 |
参数设置
Unique &Once
先说结果
迭代次数\Vuser | Vuser1 | Vuser2 | Vuser3 | Vuser4 | Vuser5 |
---|---|---|---|---|---|
1 | 一:user001 二:user001 三:user001 四:user001 | 一:user002 二:user002 三:user002 四:user002 | 一:user003 二:user003 三:user003 四:user003 | 一:user004 二:user004 三:user004 四:user004 | 一:user005 二:user005 三:user005 四:user005 |
2 | 一:user001 二:user001 三:user001 四:user001 | 一:user002 二:user002 三:user002 四:user002 | 一:user003 二:user003 三:user003 四:user003 | 一:user004 二:user004 三:user004 四:user004 | 一:user005 二:user005 三:user005 四:user005 |
3 | 一:user001 二:user001 三:user001 四:user001 | 一:user002 二:user002 三:user002 四:user002 | 一:user003 二:user003 三:user003 四:user003 | 一:user004 二:user004 三:user004 四:user004 | 一:user005 二:user005 三:user005 四:user005 |