关于返回数据包的检测问题
关于返回数据包的检测问题
在对接口进行压力测试时,
为了检测返回包buff1中从第6个字节开始的11位数据是否与param2相等,
编写如下脚本
但发现lrs_save_param("socket0", "buf1", "param1", 6, 11);
返回的值是固定第一次 lrs_receive("socket0", "buf1", LrsLastArg);返回的值,
不知各位有什么好方法能动态返回每次包中该位置的值?
#include "lrs.h"
int rc;
Action()
{
lr_think_time(8);
lrs_send("socket0", "buf0", LrsLastArg);
lrs_receive("socket0", "buf1", LrsLastArg);
lrs_save_param("socket0", "buf1", "param1", 6, 11);
rc = strcmp("<param1>","<param2>");
if(rc != 0)
{
lr_error_message ("error:data != %s", lr_eval_string("<param1>"));
//return -1;
}
else return 0;
}
请教如何在socket协议中对接收到的报进行检测
在录制socket接口的vu脚本时,
需要对返回包进行检测,
判断是否符合某一标准结构,
请各位大虾赐教
#include "lrs.h"
Action()
{
lr_start_transaction("连接");
lrs_startup(257);
lrs_create_socket("socket0", "TCP", "RemoteHost=10.224.18.163:11110", LrsLastArg);
lr_end_transaction("连接", LR_AUTO);
lr_start_transaction("缴费");
// lr_think_time(22);
lrs_send("socket0", "buf0", LrsLastArg);
lrs_receive("socket0", "buf1", LrsLastArg);
lr_end_transaction("缴费",LR_AUTO);
// lr_think_time(37);
lr_start_transaction("回退");
lrs_send("socket0", "buf2", LrsLastArg);
lrs_receive("socket0", "buf3", LrsLastArg);
lr_end_transaction("回退", LR_AUTO);
// lr_think_time(12);
lr_start_transaction("断开连接");
lrs_close_socket("socket0");
lrs_cleanup();
lr_end_transaction("断开连接", LR_AUTO);
return 0;
}
lrs_receive("socket0", "buf3", LrsLastArg);
的值是否和
recv buf3 750
"750 0013519511500 李佳 "
" bank211665030746 1 100.00 本次交"
"款 100.00 "
" \n"
" "
" \n"
".................费用明细...................... "
" \n"
"最新余额 1050.31 "
" \n"
" "
" \n"
" "
" \n"
"^"
这个包一样(加一个检查点),不知能否提供一个解决方法
用lrs_save_param函数可以把收到的包中数据取出来,具体用法看帮助吧
posted on 2009-07-29 21:43 gil's pkm2 阅读(804) 评论(0) 收藏 举报
浙公网安备 33010602011771号