2016-04-22 4 views
0

私はLoadRunner 11を使い、web_custom_requestを送る必要があります。 私はいくつかのc lib(MD5)が必要なので、C仮想ユーザプロトコルから始めます。 私は再生すると以下のエラーが発生します。 vuser_init.c(24):エラー:Cインタプリタの実行時エラー:vuser_init.c(24):エラー - 未解決のシンボル:web_reg_save_param。LoadRunnerプロトコルがC仮想ユーザの場合、どのようにweb_reg_save_paramを使用できますか?

C仮想ユーザプロトコルを選択すると、web_reg_save_paramをどのように使用できますか? プロトコルがC仮想ユーザの場合、LoadRunnerがweb_reg_save_paramを認識させるにはどうすればよいですか?

ありがとうございます。

私のコードは次のとおりです。

vuser_init() 
{ 
char *digest; 
char jsonBody[500]; 
char jsonBodyFirst[500]; 
char *key = "3KJBI23U923B8W0NF8WB29B98DAYP9AUBI2UQPF98AF9ABEWFPAOINOANSFPOAIN"; 

strcpy(jsonBodyFirst, lr_eval_string("{\"channelId\":\"2\",\"loginType\":\"2\",\"userId\":\"{loginMobile}\",\"password\":\"GGDSuDK6SlEidji9\\/BtPlQ==\",\"osName\":\"Android\",\"deviceNo\":\"865982027651010\",\"clientVersion\":\"1.0.3\",\"osVersion\":\"6.0.1\",\"deviceModel\":\"MI NOTE LTE\",\"imsi\":\"460008011671383\""));   

strcpy(jsonBody, jsonBodyFirst);   
strcat(jsonBody,"}"); 
digest = (char *)hmac_md5(jsonBody, key); 

memset(jsonBody,0,sizeof(jsonBody)); 
sprintf(jsonBody, "Body=%s,\"digest\":\"%s\"}", jsonBodyFirst, digest); 

web_reg_save_param("jsessionid", 
        "LB/IC=JSESSIONID=", 
        "RB/IC=;", 
        "LAST"); 

web_custom_request("autoLogin", 
        "Method=POST", 
        "Mode=HTML", 
        "EncType=application/json", 
        "URL=https://testsys.szsharelink.com:8443/service/autoLogin.app", 
        jsonBody, 
        "LAST"); 

return 0; 

}

答えて

0

web_reg_save_paramは、Web仮想ユーザーに固有のものです。 C仮想ユーザーを実行すると、Web固有のプロトコル仮想ユーザーの機能にアクセスすることはできません。

ただし、デフォルトでANSI C言語を使用するWeb仮想ユーザーを実行できます。そのような場合には、Web仮想ユーザ固有の機能にアクセスしながら、必要なCコードを組み込むことができます。

+0

ありがとうございます!この作品は私のためのものです。しかし、私はこのコードがWeb仮想ユーザでは動作しないことを発見し、Cの仮想ユーザでのみ動作します:char jsonBody [500]; \t memset(jsonBody、0、sizeof(jsonBody)); memset(jsonBody、0,500)はOKです。 – Baihonglili

関連する問題