LOADRUNNER之漢字編碼轉換及\X00問題


我們在使用loadrunner做性能測試的時候經常會出現一些URL編碼問題,如當參數中存在中文的時候

"Name=user", "Value=孟林", ENDITEM,

抓包的時候可以看到&user=%e5%ad%9f%e6%9e%97,然而我們在loadrunner中的腳本日志會發現並不是這樣,其原因是測試腳本中漢字的編碼是ACSII而網站中漢字的編碼是UTR-8的形式,從而導致了腳本執行的錯誤。

那出現了這樣的問題我們該如何是好呢?

我們可以在loadrunner中使用lr_convert_string_encoding()這個本身自帶的函數對漢字的編碼進行轉換。

//將參數Param中保存的值轉換為UTF-8的形式
lr_convert_string_encoding(lr_eval_string("{Param}"),LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8 ,"user");

然而這個時候我們會發現為什么我的參數后面會有一個\x00?

不要驚慌,這個\x00是文字的一個結尾符,我們可以用下面這段代碼將其去掉

//因為使用上面的函數轉換的時候會再字符串后面加上\x00,所以需要使用以下的代碼將其去掉
lr_save_string(lr_eval_string("{user}"),"user");
//進行調用
"Name=user", "Value={user}", ENDITEM,

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM