問題:如果參數(shù)化文件的值包含中文,拼到接口請求里發(fā)送到服務(wù)端债鸡,解析會失敗。
原因:服務(wù)端請求需要做 URLEncode唬滑,不能直接拼接中文字符串棺弊;
解決方案:LoadRunner 的自帶函數(shù) web_convert_param 可以做這種轉(zhuǎn)換;
示例:
lr_convert_string_encoding(lr_eval_string("{city}"),LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8,"UnicodeString"); //此時city是一個中文城市列表的參數(shù)模她,把它轉(zhuǎn)換為utf-8,存入UnicodeString參數(shù)中
lr_save_string (lr_eval_string("{UnicodeString}"),"test" ); //把UnicodeString參數(shù)的值又覆蓋回test參數(shù)尊勿,前2步相當于完成了city參數(shù)的漢字到utf-8的轉(zhuǎn)換
web_convert_param("test", "SourceEncoding=PLAIN", "TargetEncoding=URL", LAST ); //這一步把city的參數(shù)值從utf-8又轉(zhuǎn)換到url編碼
你在接口的URL請求里畜侦,可以引用這個{test},如下:
city={test} 夏伊;
執(zhí)行之后,在Log里可以看到如下信息:
city=%E5%90%88%E8%82%A5
這樣溺忧,發(fā)送到服務(wù)端,就可以被正常解析了祟滴。