51Testing软件测试论坛
标题:
急求:使用winsocket编写脚本时,如何在data.ws 中使用变量或参数??
[打印本页]
作者:
地铁和人海
时间:
2013-5-22 17:05
标题:
急求:使用winsocket编写脚本时,如何在data.ws 中使用变量或参数??
要求是这样的:
在action中发送一堆数据,之后会接收到服务器返回的数据,我想要把返回数据的一部分存起来,在下次发送数据时,存起来的那部分数据做为新数据的一部分再发送给服务器。
弄了一个下午都没解决。
跪等。。。。。。。。。
作者:
omg
时间:
2013-5-22 22:06
我没有用过winsocket,但是看你的需求就有点“关联”的概念吧,应该winsocket里也能做关联吧。
作者:
地铁和人海
时间:
2013-5-23 09:25
回复
2#
omg
我不能成功录制脚本,是手工写的代码,这样有办法用关联吗?
作者:
omg
时间:
2013-5-23 12:04
应该可以是winsock手动建立关联的,在user guide里面到看到有一篇讲这个。
作者:
西瓜xlb
时间:
2013-5-23 14:08
回复
1#
地铁和人海
使用lrs_set_send_buffer试试,自定义buf可以,希望有用
lr_start_transaction("socket_test");
lrs_send("socket1","buf0", LrsLastArg);
lrs_receive("socket1","buf1",LrsLastArg);
lrs_get_last_received_buffer("socket1", &ActualBuffer, &NumberOfBytes);
// lr_output_message("*********获取msg1返回结果***********==:%x",ActualBuffer);
lr_save_var(ActualBuffer+0,3,0,"key1");
lr_save_var(ActualBuffer+0,3,0,"key1");
if ((strstr(lr_eval_string("<key1>"),"hey"))) {
lr_end_transaction("socket_test",LR_PASS);
}else{
lr_end_transaction("socket_test",LR_FAIL);
}
lr_start_transaction("test1");
lrs_set_send_buffer("socket1",ActualBuffer,9);//actualBuffer为真实发送内容,可以从上次的返回中获得
lrs_send("socket1","buf2",LrsLastArg);//发送
lrs_free_buffer(ActualBuffer);//释放内存
lrs_receive_ex("socket1","buf20",LrsLastArg);//"NumberOfBytesToRecv=4",
lrs_get_last_received_buffer("socket1",&BufVal, &intGetLen);
lr_save_var(BufVal+0,3,0,"key1");
if ((strstr(lr_eval_string("<key1>"),"hey"))) {
lr_end_transaction("test1",LR_PASS);
}else{
lr_end_transaction("test1",LR_FAIL);
}
作者:
zhengaiqi
时间:
2013-6-3 18:23
哥们,我是录制了不能回放,一回放就报错10053
作者:
鹭岛
时间:
2013-6-4 09:59
八成你没关联导致的
之前我也做过winsocket测试,但是加密的,实在没办法(可以把加密过程用dll调用,大师教的)
我实在没办法,因为时间太赶,所以让开发弄成不加密的,就可以看到dw里面是一个xml格式的报文,直接参数化就搞定了
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2