loadrunner对socket请求测试

    xiaoxiao2022-07-07  175

    (1)loadrunner对socket请求测试 简单的Socket请求,端连接,发送接收的都是一个字符串。比较复杂的Socket请求,自己录制脚本。如果不知道,自己去查。 详细脚本如下,另外还包含一个data.ws文件,用来声明发送和接收的字节数组及其长度的,并指定要发送的内容(发送的内容一样可以参数化的)

    #include "lrs.h" Action() { char *recvbuf; int recvlen=0; int rc; lrs_startup(257); lr_start_transaction("Trans_1"); lr_start_transaction("Conn_1"); rc=lrs_create_socket("socket0", "TCP", "RemoteHost=XXX:XXXX:XXX:XXX:8888", LrsLastArg);//创建Socket连接 if (rc != 0 ) { lr_end_transaction("Conn_1", LR_FAIL); lr_end_transaction ("Trans_1", LR_FAIL); return 0; } lr_end_transaction("Conn_1", LR_PASS); //判断socket是否链接成功的事务,0表示创建成功 lrs_send("socket0", "buf0", LrsLastArg); //发送buf0,buf0为在data.ws中定义的发送变量 lrs_receive("socket0", "buf1", LrsLastArg); //接收消息,存放在buf1中,buf1是在data.ws中定义的接收数组,注意数组长度一定要大于等于实际接收长度 lrs_get_last_received_buffer("socket0",&recvbuf,&recvlen);//把Socket最后接收的字节数组,长度放在recvlen中,内容放在recvbuf中 lr_output_message("Received:%s",lr_eval_string(recvbuf)); if(recvlen>3) lr_end_transaction("Trans_1", LR_PASS); else lr_end_transaction ("Trans_1", LR_FAIL); lrs_disable_socket("socket0", DISABLE_SEND_RECV); lrs_close_socket("socket0"); return 0; }
    最新回复(0)