#include "lrs.h"
Action()
{
//定义socket连接的返回值,socket如果成功返回0.
//If a Windows Sockets function succeeds, it returns 0. If a VuGen error occurs, an LRS return code is issued. If an error occurs with a socket, it returns one of the Windows Sockets error codes.
int sc=0;
int a=0;
lr_start_transaction("aaa");
//建立socket连接,并检查连接是否成功
sc = lrs_create_socket("socket1","TCP","RemoteHost=172.16.13.213:8802",LrsLastArg);
if (sc = 0)
lr_output_message("Socket was successfully created ");
else
lr_output_message("An error occurred while creating the socket, Error Code: %d", sc);
//定义接收报文的格式:接收到entry则停止接收报文
lrs_set_receive_option(EndMarker, StringTerminator,"entry");
//存储接收的报文
lrs_save_param("socket1","buf3","param1",1,243);
//发送报文,buf2内容在data.ws中定义发送报文的内容
lrs_send("socket1", "buf2", LrsLastArg);
//判断接收内容是否正确,在data中,定义接收报文的长度
a=lrs_receive("socket1","buf3",LrsLastArg);
//如果socket接收失败,输出当前系统时间,输出接收的报文,输出接收异常码
if (a!=0)
{
lr_save_datetime("%Y-%m-%d %H:%M:%S",DATE_NOW + TIME_NOW,"times");
lr_output_message(lr_eval_string("<times>"));
lr_output_message(lr_eval_string("<param1>"));
lr_output_message("An error occurred while receive, return error NO: %d", a);
lr_end_transaction("aaa", LR_FAIL);
}
else
lr_end_transaction("aaa", LR_PASS);
//关闭socket连接
lrs_close_socket("socket1");
return 0;
}
data.ws
;WSRData 2 1
//定义发送报文的名称,内容
send buf2
"<?xml version=\"1.0\" encoding=\"UTF-8\"?><message></message>"
//定义接收报文名称的长度等,详细参考loadrunner帮助
recv buf3 243 "<?xml <entry"