LoadRunner脚本实例来验证参数化的取值

SINM {3]!G0问题提出:  主要想试验下,在Controller中,多个用户,多次迭代中参数的取值.51Testing软件测试网(['H5f,d)[jUh

:o$F$kY+sO/y"Yr5S0方法:51Testing软件测试网$_v.sR$tS*T)}

TJS]#v3u%bi"?!}0脚本:  我把取到的参数值和对应的VuserID记录下来保存到一个文件中,下面是例子的脚本

X-n)SI:J#t:v:YM'v#X0

long fileopen;51Testing软件测试网sqWc|0M

char *filename =  "C:\\temp\\params.log";

ol!Ml(X,L n'P0

51Testing软件测试网7]Qa-v,D7ix

vuser_init()51Testing软件测试网O:^K1k2U]D5v-}

{51Testing软件测试网K,z4P;J UsK

H!Df*PB

      if ((fileopen =  fopen(filename,"a+")) == NULL) {

o_mS5r0f*Kz:l0

             lr_error_message  ("file isn't open,path=%s",filename);51Testing软件测试网9k(L} d%f

             return  0;51Testing软件测试网6g2`a+}*h,T

      }51Testing软件测试网6Ja-a(R#AT*y#U)a

      return  0;51Testing软件测试网sPi)y(C  N

}

#C4bW$A'B@cDg w0

Action()51Testing软件测试网BS!rwffr w O

{

0lGQhNuY'`EE0

      int  id,scid;51Testing软件测试网XV"b;Vsc;e

      char  *vuser_group;

2s  kV#h+[Db~1r0

3GE8^L

      //typedef long  time_t;

K$Q;G  uT8@0

      //time_t  t;51Testing软件测试网UI  BUI

      long  t;51Testing软件测试网F  iya1}U.lT

      char *a =  "{aaa}";

S8nVRrQ  @$QE?0

      char *b =  "{bbb}";

(eu s ]$of  v*BCH_2Y0

51Testing软件测试网jc%M+v

  lr_whoami(&id,  &vuser_group, &scid);51Testing软件测试网?eFk}(Q

51Testing软件测试网  PBi[+c r$s N

51Testing软件测试网z KL$bK__)l8v

   fprintf(fileopen,"%d,%s,%s,%s",id,lr_eval_string  (a),lr_eval_string (b),ctime(&t));51Testing软件测试网2~7M k6S }F

esXi~/p_9?8L?k^

      return  0;

W]jnv.n0

}51Testing软件测试网fb:R8MV@"f

vuser_end()

6aCV9iz)]N6TI0

{51Testing软件测试网r(zbMY{

      fclose(fileopen);

Jd8EOt0

      return  0;51Testing软件测试网7n  x]3s3k(j

}      

j2O#tj9V d2w0

51Testing软件测试网n:Q"DDNDUN

参数设置为:51Testing软件测试网8I] Z9w-J)QM

取唯一值,每次迭代更新。51Testing软件测试网gP U`C6DRR

51Testing软件测试网qAK:K4@Z9X

运行时设置的迭代次数为2。

+jb+f|3~%h_1]Q*r0

51Testing软件测试网u!c#Ty ~%WE'\

场景的设置:51Testing软件测试网q,mk4J*Jf

虚拟用户数:5个

:? GY6uE0

运行模式:没有设置duration,选择的“Run until  complete”

;l)A&G{j6Iq}.lk0

完成后的日志文件params.log的内容如下:

4z;d!q)J1v0

1,a1,b1,Thu Jan 01 08:00:05 197051Testing软件测试网V"b6vY1h;n
1,a2,b2,Thu Jan 01  08:00:05 197051Testing软件测试网Sq F"t9j"dB_  v$l
10,a5,b5,Thu Jan 01 08:00:05 197051Testing软件测试网8L$A C%[]2`+~3k
10,a6,b6,Thu Jan  01 08:00:05 1970
4o-[s(YN02,a3,b3,Thu  Jan 01 08:00:05 1970
lI#Gq,GYpV02,a4,b4,Thu Jan 01 08:00:05  197051Testing软件测试网7^doa!?c
30,a9,b9,Thu Jan 01  08:00:05 1970
$j ` m&?})X  ]%i030,a10,b10,Thu Jan 01 08:00:05 1970
0~0a4VQ$^X4_3XG021,a7,b7,Thu Jan 01 08:00:05  197051Testing软件测试网$QdfM0V
21,a8,b8,Thu  Jan 01 08:00:05 1970

)mMv2K~2Lq z,jg0

51Testing软件测试网7Z1u(vNOx7p"p8siV

从生成的日志文件中可以看到VuserID分别为1,2,10,21,30

d v[|m*{0

第一次迭代取参数分别为1,3,5,7,951Testing软件测试网 U4@!So+Z

第二次迭代取参数分别为2,4,6,8,1051Testing软件测试网}zK+Rp7`%o

那试验的结果就是每个Vuser取参数的时候相同的Vuser在多个迭代中取的是连续的。不同的Vuser第一个的取值是计算了迭代次数后的那个顺序上的值。

LoadRunner脚本实例来验证参数化的取值的更多相关文章

  1. LR参数化后取值规则小记

    对参数化的取值,只有一个用户的情况能分清,但是多用户多迭代就搞不懂,特意使用Parameter List中自带的参数化模拟器Simulate Parameter进行简单的实验,3条数据 + 4个用户 ...

  2. LoadRunner脚本增强技巧之参数化(一)

    参数化的方式有两种,一种通过File引入参数值,一种通过数据库引入参数值.本篇介绍File方式引入参数值. 一.File方式参数化过程 1.在脚本中找到需要做参数化的字符串,选中,右键点击,选择Rep ...

  3. Loadrunder之脚本篇——参数化同行取值

    select next row 记录选择方式 Same line as,这个选项只有当参数多余一个时才会出现,其作用是根据某一个参数的行号取同一行. 例中的做法如下: 将多个参数存放在一个参数文件中: ...

  4. jmeter参数化随机取值实现

    jmeter能用来做参数化的组件有几个,但是都没有随机取值的功能,遇到随机取值的需求怎么办呢? 突发奇想,可以用函数__CSVRead()来实现: __CSVRead() CSV file to ge ...

  5. LoadRunner脚本增强技巧之参数化(二)

    特别提醒: 1.在形成数据池之后,数据库中的数据变化不会影响数据池中的数据. 2.数据文件一定要以一个空行结束,否则,最后一行输入的数据不会被参数所使用. 3.一般我们用到的很多的都是使用数据文件来保 ...

  6. loadrunner 脚本优化-参数化之场景中的参数化取值

    脚本优化-场景中的参数化取值 by:授客 QQ:1033553122   Action() { lr_eval_string("{NewParam}"); lr_eval_stri ...

  7. LoadRunner参数化之数据取值和更新方式

    其实看LR已经很久了,每次看到参数化的取值更新时,都没有看透,了解个大概就为止了,也确实挺搞脑子的. 现在理解下来 分成2部分 取值方式  Select next row 如何从数据列表中取值 Seq ...

  8. loadrunner 参数化取值方式详解

    参数化对话框中与参数取值方式有关的区域如下: 改变参数化的取值方式,关键在于Select next row和Update value on这两个选项. Select next row包括以下选项: S ...

  9. java 八种基本数据类型之初始值、取值范围、对应的封装类

      CreateTime--2017年12月6日10:03:53 Author:Marydon 一.java数据类型之基本数据类型 (二)八种基本数据类型的特征 import java.math.Bi ...

随机推荐

  1. ffmpeg-20160508-git-bin-v2

    ESC 退出 0 进度条开关 1 屏幕原始大小 2 屏幕1/2大小 3 屏幕1/3大小 4 屏幕1/4大小 S 下一帧 [ -2秒 ] +2秒 ; -1秒 ' +1秒 下一个帧 -> -5秒 f ...

  2. Java for LeetCode 213 House Robber II

    Note: This is an extension of House Robber. After robbing those houses on that street, the thief has ...

  3. NetBeans常用快捷键

    Ctrl+Space:代码自动完成,在Windows下通常与输入法切换有冲突,我改成了ALT+2: Ctrl+/:注释&取消注释: Alt+Shift+F:编辑器自动格式,由于三个组合键不好按 ...

  4. 数据结构顺序表删除所有特定元素x

    顺序表类定义: template<class T> class SeqList : { public: SeqList(int mSize); ~SeqList() { delete[] ...

  5. asp.net mvc htmlHelper

    ASP.NET MVC 3.0 HTML辅助方法   HTML辅助方法(html helper)是用来帮助生成HTML的方法. 1.HTML辅助方法应用实例 ◊ 生成form元素 @using (Ht ...

  6. 【python】类中的self

    在python的类中,经常会写self,代表对象自己.如下例: #coding=utf-8 class Foo: def __init__(self, name): self.name = name ...

  7. odoo注销后在登录时的用户名和密码

    初识odoo时会遇到注销后无法登陆的情况,一般原因是没有留意管理员邮件地址和对应的密码所致.初始情况下默认的邮件地址为admin,密码为数据库创建时提供的密码.

  8. python基础——多重继承

    python基础——多重继承 继承是面向对象编程的一个重要的方式,因为通过继承,子类就可以扩展父类的功能. 回忆一下Animal类层次的设计,假设我们要实现以下4种动物: Dog - 狗狗: Bat ...

  9. Codeforces Round #371 (Div. 2)(set\unique)

    B. Filya and Homework time limit per test 1 second memory limit per test 256 megabytes input standar ...

  10. Java观察者模式(Observer模式)

    Java深入到一定程度,就不可避免的碰到设计模式(design pattern)这一概念,了解设计模式,将使自己对java中的接口或抽象类应用有更深的理解.设计模式在java的中型系统中应用广泛,遵循 ...