51Testing软件测试论坛
标题:
在loadrunner中如何对性别常量进行参数化
[打印本页]
作者:
空灵dj
时间:
2013-5-7 22:47
标题:
在loadrunner中如何对性别常量进行参数化
reg()
{
lr_think_time(10);
/*
lr_convert_string_encoding("女",LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8,"str");
//char tmp;
strcpy("tmp",lr_eval_string("{str}"));
lr_log_message("str is %s ","tmp");
lr_save_string("tmp","sex");
*/
web_submit_data("RegisterAction",
"Action=http://localhost:8080/reservations/RegisterAction",
"Method=POST",
"RecContentType=text/html",
"Referer=http://localhost:8080/reservations/register.jsp",
"Snapshot=t3.inf",
"Mode=HTML",
ITEMDATA,
"Name=tName", "Value=test{username}", ENDITEM,
"Name=tPwd", "Value=123", ENDITEM,
"Name=tPwd2", "Value=123", ENDITEM,
"Name=tSex", "Value=lr_eval_string("{sex}"), ENDITEM,
"Name=select", "Value=?????", ENDITEM,
"Name=answer", "Value=3501", ENDITEM,
"Name=tOfficeAd", "Value=", ENDITEM,
"Name=tDepartment", "Value=10{username}", ENDITEM,
"Name=tTel", "Value=8663{username}", ENDITEM,
"Name=turename", "Value=", ENDITEM,
LAST);
return 0;
}
性别的参数如图:
[attach]85045[/attach]
回放之后出现错误,求前辈们帮忙瞅瞅,感激不尽!
作者:
云层
时间:
2013-5-8 13:35
太复杂啦。
"Name=tSex", "Value={sex}“, ENDITEM,
就行了。这个东西的写法是你曲解别人的写法导致的
作者:
空灵dj
时间:
2013-5-8 20:04
回复
2#
云层
我之所以会写这么复杂,主要是录制的时候勾选了UTF-8,生成的脚本中遇到汉字还是显示的是“?”,直接参数化运行脚本后数据库中则是一个不认识的繁体字样加“?”,我在想要不要先把性别常量先转化为了简体中文汉字后再参数化。结果编译不通过。
作者:
云层
时间:
2013-5-9 09:27
你还没明白问题的关键!
参数是在代码里面直接用的,你用lr_eval_string就成字符串了,而且你还把这个写在LR的函数里面。
ps.乱码的问题也不是你这样解决的。
作者:
wuliangye
时间:
2013-5-9 10:07
参数化部分只要写成红色部分即可:
"Name=tSex", "Value="
{sex}
", ENDITEM
作者:
空灵dj
时间:
2013-5-11 18:13
回复
4#
云层
嗯,确实,我那样是不对,现在不撇开参数化不说,为什么勾选了UTF-8性别的汉字为何还是乱码?
作者:
空灵dj
时间:
2013-5-11 18:14
回复
5#
wuliangye
这样试过,在数据库中的性别值为乱码,
作者:
云层
时间:
2013-5-12 16:57
你设置UTF-8不代表系统就是UTF-8
作者:
空灵dj
时间:
2013-5-13 13:46
回复
8#
云层
被测系统是GB2312的,那要怎么才能没有乱码没有问号?求解决办法!
作者:
zcjismsy
时间:
2013-5-13 16:40
我也碰到过乱码的问题,我的解决方法是:不需要做参数化的就直接那样乱码,因为回放是正常的,需要做参数化的就直接把乱码改成汉字。PS:除非必须用中文,一般都用英文的。
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2