51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2537|回复: 4
打印 上一主题 下一主题

[求助] lrs_length_send

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2013-3-18 17:46:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 standmyground 于 2013-3-19 10:43 编辑

各位大侠,请帮忙看看啊。

我有一个loadrunner的问题困惑了2天,在网上找不到解决办法,所以想请高手帮忙看一下,真是非常感谢。

问题是这样的:
我录制了一个winSocket脚本,dataws里面自动生成了一个send buf 12。
buf 12里面的一个字段我进行了参数化,所以这个buf 12的长度是会根据参数长度有所变化的。
那么我发送buf 12的时候,如何能精确指定buf长度?使用lrs_length_send能解决吗?
buf 12里面包含的内容格式是下面这样的:
send buf12 241

//下面是协议头
4个字节协议号
4个字节包体长度
4个字节指令编号
4个字节指令序号
32个字节源id
32个字节目的id
//下面是包体
包体

因为包体里面有内容被我参数化了,所以“4个字节包体长度”也应该是根据参数长度的变化而变化,
如果长度值不准确,会导致接收方不能识别该协议包。
使用lrs_length_send能解决吗?我用lrs_length_send试了,不行,下面一行是相关代码。
lrs_length_send("socket3","buf12",1,"Offset=4","Size=4","Encoding=1","SubtractSize=0",LrsLastArg);
lrs_length_send是用来干这种活的吗?我该用什么方法解决上面的问题呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2013-3-19 19:22:11 | 只看该作者
lrs_create_socket(“socket0”, "TCP", "RemoteHost=192.168.0.137:30137",  LrsLastArg);
如果你要参数的是字符型的
char  param[300 ];
memset(param,0,300);
lrs_set_send_buffer ("socket0", param, strlen(param));
//这句的作用就是 使用参数 param来代替 buf0
lrs_send(”socket0“, ”buf0“, LrsLastArg);
具体实例和相关调试脚本,见本人空间!

这样 你发送的就不是 buf0了 而是 param得值
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2013-3-20 12:02:42 | 只看该作者
回复 2# love_yebin


    谢谢,我现在没有权限访问您的空间!
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2013-3-21 17:42:49 | 只看该作者
今天用lrs_length_send函数成功发送了自己组装的一段缓存,让我对该函数有了初步的了解,有可能不准确,请大家指正:
1、如果缓存里面包含空字符,就不能使用lrs_send进行发送,提示Error : Unable to translate buffer to socket3. Error code : 9013,此时可以使用lrs_length_send函数进行处理。不理解为啥lrs_send会出这个问题,而lrs_length_send就不出,哪位能教教我。
2、如果发送的缓存里面有一个标识缓存长度的字段,该字段又是动态变化的(缓存里面有参数导致的),可以使用lrs_lenght_send动态生成这个长度字段。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2013-11-14 11:02:39 | 只看该作者
解决没有,楼主
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-9-20 22:46 , Processed in 0.067230 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表