LR 对无法录制的C/S(有加密要求)系统长连接做性能测试

1.首先介绍一下C/S系统

(1).客户端一般为非windows系统上的应用(比如移动互联网类),服务端就不用介绍了

(2).整套系统采用的时tcp的长连接方式

(3).整个长连接数据传递都必须采用特定加密格式和指定的数据长度

2.使用LR测试该系统的性能

协议选择以winsocket为佳,当然测试长连接也可以用java Vuser ! 两者相比较而言、前者更佳。直接上action步骤代码

#include "lrs.h"




Action()
{
lr_start_transaction("regiester");


    lrs_create_socket("socket0", "TCP", "LocalHost=0", "RemoteHost=192.168.1.11:9003",  LrsLastArg);


    lrs_send("socket0", "buf0", LrsLastArg);//send code


lrs_send("socket0", "buf1", LrsLastArg);//send length


lrs_send("socket0", "buf2", LrsLastArg);//send body


lrs_receive("socket0", "buf3", LrsLastArg);


    lrs_close_socket("socket0");


lr_end_transaction("regiester", LR_AUTO);


return 0;
}

          整个脚本过程中最难的就是客户端需要发送到服务端的数据该如何写的问题,因为不能录制,所以请求的加密数据不知道以怎样的形式提交给服务端的。

查看LR文档,提到winsocket 协议,数据一般都采用的是ascii码传输的,故要将加密数据转换成ascii的形式写入buf中,贴代码


看上图 由于服务端接收的加密数据位字节码形式,而且buf中发送字节码都采用的是16进制方式,所以内容就变成一堆的“\x**”的组合!

这样,整个过程脚本就写完了,验证器正确性时,回放一下就行!

这里我用到了ascii码和16进制的转换工具,将内容转换输入;并用到了网络抓包工具实现数据传递的正确性检查!

大家想下载的话可以到http://download.csdn.net/user/wise622453 去下载,也可以自己网上找

最后附上 1000 socket并发的license 

global 1000: AEACFSJI-YASEKJJKEAHJD-BCLBR


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值