簡體   English   中英

在 Loadrunner 中解析 json 響應

[英]parse json response in Loadrunner

在 loadrunner 腳本中,我想解析收到的 json 響應並檢查響應是否正確。 為此,我有以下代碼:

web_set_max_html_param_len("999999");

web_custom_request("JsonData", 
    "URL=https://localhost:8080/testpgm", 
    "Method=POST", 
    "RecContentType=application/json", 
      LAST);

web_reg_save_param("JsonData",
    "LB=",
    "RB=",
    "Search=Body",
    LAST);

web_js_run(
"Code=getEmployee(LR.getParam('JsonData'));",
"ResultParam=Names", 
SOURCES, 
"File=getEMP.js",ENDITEM, 
LAST); 

javascript代碼如下:

function getEmployee(stringData)
{ 
    var data = JSON.parse(stringData); 
    var index = data[data.length-1];
    var value = data.ItemLists{0}.Items{0}.NamedValues{0}.Value{1}.name;
    return value; 
} 

它不起作用,我收到以下錯誤:

Action.c(43): web_js_run started    [MsgId: MMSG-26355]
Action.c(43): Error -26000: Error from JS Engine: "C:\Users\admin\Documents\VuGen\Scripts\Web1\getEMP.js:5:SyntaxError: missing ; before statement
"   [MsgId: MERR-26000]
Action.c(43): Error -35051: Failed to run the JavaScript code   [MsgId: MERR-35051]
Action.c(43): Warning -26379: Pending web_reg_save_param/reg_find/create_html_param[_ex] request(s) are deleted and will be handled as "not found"      [MsgId: MWAR-26379]
Action.c(43): Error -26377: No match found for the requested parameter "JsonData". Check whether the requested boundaries exist in the response data. Also, if the data you want to save exceeds 999999 bytes, use web_set_max_html_param_len to increase the parameter size    [MsgId: MERR-26377]
Action.c(43): Error -26374: The above "not found" error(s) may be explained by header and body byte counts being 0 and 0, respectively.     [MsgId: MERR-26374]
Action.c(43): web_js_run highest severity level was "ERROR"     [MsgId: MMSG-26391]

相關函數(web_reg_save_param)應該放在請求之前。 嘗試

web_set_max_html_param_len("999999");

web_reg_save_param("JsonData",
    "LB=",
    "RB=",
    "Search=Body",
    LAST);


web_custom_request("JsonData", 
    "URL=https://localhost:8080/testpgm", 
    "Method=POST", 
    "RecContentType=application/json", 
      LAST);


web_js_run(
"Code=getEmployee(LR.getParam('JsonData'));",
"ResultParam=Names", 
SOURCES, 
"File=getEMP.js",ENDITEM, 
LAST); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM