Believe in yourself.

LoadRunner(五)、参数化之文本参数化

 

  • 在用Loadrunner做性能测试时,经常要用到参数化。

文本参数化

在WebTours多注册几个账号,对登录的username进行参数化。

鼠标移动到需要参数化的数据上,右键弹出列表,选择Replace with a Parameter

 

 填写变量名

 

 点击OK按钮

 

右键参数化的变量名,选择Parameter properties

 

 

 

 

 

 

 把账号数据写进去并保存

 

 在Vuser的Run-Time serrings中设置3次循环来验证下

 

 保存设置,执行脚本

 

 可以看到三次循环都成功了。

这里只对username进行了参数化,那么如果还要对passwd进行参数化,并要求username和passwd一一对应,该怎么办呢?

先对密码进行参数化,变量名为pwd

 

 在Parameter properties中File选择username.dat,点击Add Column新增一列,名称为pwd。

 

把密码写进去,以逗号为分割

 

 

在Parameter Properties界面中的Select next row选择Same line as username,这样就使username和pwd一一对应了。

 

 

 

 最后回放验证下,可以看到3次循环都成功了。

 数据分配方式

在Parameter Properties界面可以选择多种数据分配方式

1、Select next row:选择下一行的策略。 

  • Sequential:顺序取行
  • Random:随机取行
  • Unique:使用唯一行

2、Update value on:更新值得策略

  • Each iteration:每次迭代都取新值
  • Each Occurrence:每次取值更新
  • Once:只更新一次

按照基本的排列组合会产生9种组合,现在对这9种组合进行一一分析。

测试脚本:

Action()
{
    lr_output_message(lr_eval_string("{datatest}"));
    lr_output_message(lr_eval_string("{datatest}"));
    return 0;
}

迭代2次

datatest=test001,test002......test010

1、Sequential+Each iteration

运行结果:

 

 由此可见,只是在迭代的时候才更新取值

2、Sequential+Each Occurrence

运行结果:

 

 由此可见,每次取值都会更新

 

3、Sequential+Once

运行结果:

 

  由此可见,每次都取同一个值

4、Random+Each iteration

运行结果:

 

 5、Random+Each Occurrence

运行结果:

 

 6、Random+Once

运行结果:

 

 7、Unique+Each iteration

运行结果:

 

 8、Unique+Each Occurrence

运行结果:

 

 9、Unique+Once

运行结果:

 

posted @ 2020-08-25 11:19  eastonliu  阅读(311)  评论(0编辑  收藏  举报