打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
loadrunner的socket脚本

#include "lrs.h"

Action()
{
    char *Data;
    int Size=0;
    int rc=0;
    //返回报文是否成功,判断值
    int msgOk=-1;
    char *position="";
    //返回报文是否成功标识
    char *passMsg="<pckgsq>0000<";   //需和服务端进行确认是否一定返回该字符串

    int receive_code;
    memset(&Data,0,8);


 //web_set_sockets_option("CLOSE_KEEPALIVE_CONNECTIONS","1");

    //建立socket
    //rc=lrs_create_socket("socket0","TCP","RemoteHost=132.7.44.237:18003",LrsLastArg);
 rc=lrs_create_socket("socket0","TCP","RemoteHost=132.7.41.67:18003",LrsLastArg);
 //rc=lrs_create_socket("socket0","TCP","RemoteHost=132.6.40.29:18003",LrsLastArg);
    if (0==rc) {
        lr_output_message("Socket was successfully created ");
    }
    else
    {
        lr_output_message("An error occurred while creating the socket, Error Code: %d",rc);
    }

 

    //开始事务
    lr_start_transaction("socket_trans");

    //发送数据
    lrs_send("socket0","buf0",LrsLastArg);

   
 //结束发送
    //lrs_disable_socket("socket0", DISABLE_SEND);

 //lrs_set_recv_timeout(60,0);

 //lrs_set_receive_option(EndMarker,StringTerminator,"</message>");

 

 //lrs_set_recv_timeout(0,0);
   // lrs_set_recv_timeout(120,0);
    //lrs_set_recv_timeout2(10,0);
 //lrs_set_receive_option(EndMarker,BinaryStringTerminator,"\X00");

    //接收服务端发回的数据
     receive_code=lrs_receive("socket0","buf1",LrsLastArg);
 
 //receive_code=lrs_receive_ex("socket0","buf1","NumberOfBytesToRecv=16",LrsLastArg);


 //receive_code=lrs_save_param("socket0","buf1","wtbh",6,50);
    //获取最后返回的缓冲区的数据及其长度
    lrs_get_last_received_buffer("socket0",&Data,&Size);

    //获取passMsg在返回数据的位置
    position=(char *)strstr(Data,passMsg);
    msgOk=(int)(position-Data+1);  //数组下标从0开始,因此加1以符合使用习惯


   //保存参数
    lrs_save_param_ex("socket0","user",Data,0,417,"ascii","new_parameter");
    lrs_free_buffer(Data);

    //lr_output_message("The result's size is: %d.",Size);
    //lr_output_message("The receive code is: %d.",receive_code);
    //lr_output_message("The data socket server give is: %s",lr_eval_string("<new_parameter>"));


 //lr_think_time(0.010);

 //lr_end_transaction("socket_trans",LR_PASS);

   //根据msgOk的值,判断事务是否成功
    if (msgOk>0) {
            lr_end_transaction("socket_trans",LR_PASS);
    }
   else
    {
           lr_end_transaction("socket_trans",LR_FAIL);
    }

 //结束发送
   // lrs_disable_socket("socket0", DISABLE_SEND);
  //结束接收
    lrs_disable_socket("socket0", DISABLE_SEND_RECV);
 //关闭打开的socket
    lrs_close_socket("socket0");
 
    return 0;
}

 

---------data文件--------- ecif03_data.ws 

;WSRData 2 1
send buf0 156
 "000156<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n"
"<message>\r\n"
"<head>\r\n"
"<prcscd>ecif03</prcscd>\r\n"
"</head>\r\n"
"<body>\r\n"
"<custno>115600000000229</custno>\r\n"
"</body>\r\n"
"</message>\r\n"

recv buf1 417

-1

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
loadrunner容易使用
LoadRunner中winsocket协议脚本回放时的mismatch问题处理方法
loadrunner测试TCP协议服务器性能
跨平台C++ Socket类, sock.cpp
C++ Socket编程步骤
3个学习Socket编程的简单例子:TCP Server/Client, Select
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服