memcpy 长度0_性能测试:动态报文长度处理方法

本文介绍了在TCP协议测试中处理动态报文长度的方法,包括使用memcpy在LoadRunner中的应用和Jmeter源码修改。讨论了如何在脚本中计算并添加报文长度,以及在Jmeter中通过修改源码实现动态报文长度处理,同时对比了修改前后的性能影响。
摘要由CSDN通过智能技术生成

谢邀!

今天说下脚本开发中,因测试数据长度不一致,导致报文长度动态变化的处理过程。

可能小伙伴们刚接触时不太熟悉,到网上找各个资料,却觉得网上的方法可用,但不太方便,下面我整理了我经常用到的一些处理方法,若小伙伴们觉得不太清楚的地方,还麻烦回复我,我及时修订。

条件说明:

  1. 测试工具:LoadRunner11.0 & Jmeter5.0。
  2. 协议:TCP。
  3. 前提条件:报文开头含定长的字符串表示报文内容的总长度,如:0004abcd,其中“0004”表示后面还有4个字符“abcd”表示报文内容。
  4. 约定:为描述方便,我把上述“0004”称为报文长度,“abcd”称为报文内容

先说说LoadRunner(即C语言环境下处理过程):

1.一个脚本里只有一个TCP请求时。

思路:通过strlen函数计算报文内容的长度,再把该长度拼接报文内容的前面。

一点碎碎念:网上常看见常常通过2个及以上buffer的转存,或malloc、free函数来实现该思路,但我觉得还有优化的空间。

实现图解:

80ca594046cb6226c327bdb08bf6e4fe.png
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值