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第一个的取值是计算了迭代次数后的那个顺序上的值。