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