Loadrunner socket测试内容总结

socket简介

这里请大家自行百度。这里测的是基于tcp的长连接socket,简单点说,不同于平时测试的web应用,socket像打电话一样,需要接通—保持通信—断开,且这三个应该是一个完整的过程,缺一不可。然后保持通信的时候也需要一直连接,一旦断开也会出现错误。当然也正因为如此,socket通信的信息正确性相较于普通http报文来的更加安全。

在性能测试中遇到socket项目应该怎么做

背景

这次是在测试的时候客户想要终端往后台发送数据报文,在多台数据终端发送时后台的处理能力。通过这个我们也可以发现,socket大部分用在一些硬件客户端这种类型的测试中,当然有时候我们常测试的网站上面也有socket的相关内容。

socket脚本编写

好了,既然要测试socket,那么我们就看loadrunner测试的过程了,我们都知道就是写脚本—>跑场景–>收集结果。接下来我们就说写脚本,写脚本呢就有写脚本、参数化、关联、检查点这些项目。我们一个一个来。注意文章中提到的函数使用或者函数的一些介绍均来自于loadrunner自带的帮助文档,在脚本编辑区按F1就能调出来,里面能够搜索你能用到的函数。

原理

我们从socket原理中可以看出来,socket有点像打电话,那就要先接通,然后通话,然后挂断,在socket中就是建立连接—传输数据—关闭连接。

选择协议
首先在新建脚本时需要选择windows socket协议
在这里插入图片描述

语句

建立连接
我们使用lrs_create_socket()函数,函数用起来是这样的
在这里插入图片描述
这里面第一个test1是个名字,你用的时候可以随便起。
第二个那个TCP是采用的协议类型名称,一共两种TCP、UDP
第三个LocalHost是本地地址和端口,因为咱们是往外发的所以这里可以不填,我研究了下,这里可以写LocalHost=4002,也可以在端口前面加上本机名称或IP地址,如LocalHost=overn:4002,或LocalHost=168.3.4.127:4002,所以我写LocalHost=0说明本地端口是0这样实际上不对,应该直接不填。
第四个那个RemoteHost是目标的地址和端口,其内容和LocalHost是一样的,这里可以看到我写的地址加端口。
另外,还有个backlog: 请求连接队列的最大长度,如backlog=20,这个参数一般是服务器端用的,目的是下面肯定有很多请求过来,通过这个设定来限制请求队列长度。。我觉的我们一般用不到。
好了,这样的话我们通过这个语句就建立了连接了。这个函数会把建立连接的结果返回给我们。如果返回值是0,那么表示连接建立成功了。如果不是0那么连接就失败了。至于为什么失败,可以通过返回值来看。至于返回值都有啥,由于内容比较长我在文末贴出来

所以这个时候我们在建立连接的时候需要这样
在这里插入图片描述
先定义一个整形变量rc,建立连接的时候rc=lr_create_socket来保存建立连接的返回值,然判断rc的值如果为0就通过如果不为0就输出rc的值方便我们判断结果。
这里有个小技巧,大家可以看见我上面的代码中建立链接的时候有个lr_eval_string(""),首先这里是链接名称,然后我们并发的时候肯定有很多链接,那么这里应该就得参数化一下,然后socket协议下面参数化的内容是<>括起来的,大家知道这个用法就好了。

收发数据
好了,既然我们建立完链接了,这样剩下来就是收发数据了。
我们发送数据使用下面这个函数:lrs_send,这个函数有4个参数:
名称:我们发送前不是提前建好了一个连接么,发送时就要使用这个连接,所以这里写前面连接名称。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值