十五年测试老手,长期负责WEB\APP 项目测试,目前主要负责团队管理工作。
LoadRunner函数中的几个陷阱
上一篇 /
下一篇 2011-11-17 22:52:16
/ 个人分类:loadrunner
查看( 1544 ) /
评论( 3 )
1、atof 51Testing软件测试网/HO,H*jZ'b;QC
在[url=]
LoadRunner[/url]中如果直接用:
51Testing软件测试网9nv#K:n"Nk1Js
S B7{9? FP,E0
float f; n)P^{Ra7tRmG0
f=atof("123.00"); d3N;KUmiq/|0
lr_output_message("%f",f); |
51Testing软件测试网-a(w|$P'Zt
B-~H
51Testing软件测试网x.q%n)VL`
输出的结果会是1244128.00,根本不是我们想要的。
51Testing软件测试网roz?&Q:Nx
因为float,double型在不同的平台下长度不一样,所以在loadrunner中调用atof需要显式的声明这个[url=]
函数[/url]。
H!g'?,N
l*EjB0
如下:
sH)|,`O!K0
51Testing软件测试网an?+[te%S#p
doubleatof (const char *string);51Testing软件测试网{zc(i8ME _
float f; "Dsmnps pp}#u0
f=atof("123.00"); 5z*rUC-S?1bN0
lr_output_message("%.2f",f); |
1k3vGu2ppeH8|(K0
Y P^ElA0
这样就能输出结果:123.00。
51Testing软件测试网m.EN
J_p
其实,在LR关于atof的帮助文档描述中有提到这点,要求使用这个函数前“must be explicitly declared in Vugen scripts. ”,同样的要求也出现在atol函数的描述中。
"K
R&JU|0
2、lr.save_string51Testing软件测试网*P:a$q]a"[| h4l
在LoadRunner中,使用.NET VUser时可以使用lr.save_string来存入一个变量,但是其使用方法却与通常使用的lr_save_string有区别,不小心的话容易“中招”。
FhEdn!D0
C语言的lr_save_string的定义如下:
1_Iu#y+Q f:Z0
int lr_save_string (const char *param_value, const char *param_name); |
51Testing软件测试网h2~6l+Q6]
c
*q|I$f;C0W.m0
注意:参数值在前面,参数名在后面。
~Zl m6U,QB0
而.NET VUser的lr.save_string的参数使用恰好相反,参数名在前面,参数值应该放到后面。