记一次jmeter多用户并发测试

用了jmeter后真的觉得太好用了,给我平时的工作提供了很多便利。做过request+unittest接口自动化测试的小伙伴们,应该早就发现jmeter提供了这种自动化的工具版。平时我们做业务测试的时候,时间紧张,用jmeter来做一些重复的操作就真的很方便了,只需把接口录入好,就可以反复使用了。

先来看下怎么实现多用户登陆

1、首页录入登陆接口,可以看到登陆接口是需要有入参的,bodydata里,其中有一个参数就是ID。为了能让请求正确的解析,需要给请求头添加content-type。右键请求-----添加元件----http header manager ----在里面添加Content-Type:application/json的键值对。再在请求上添加一个元件-----CSV data set config,ID就是从它这里读的

记一次jmeter多用户并发测试_第1张图片

CSV data set config大概长这样的,如果文件里有10条数据,那么线程的数量就设置成10

记一次jmeter多用户并发测试_第2张图片

2、入参都设置好了,下一步就是获取token了,因为后面的几乎所有接口的请求头里都是需要token的。

在请求上新增一个后置处理器,我选的是json extractor。当然如果需要提取的值并不是某个属性值,也可以用正则表达式。

记一次jmeter多用户并发测试_第3张图片

3、下面来看一个多用户评论的例子

 

分析这个接口,入参有很多,包括给啥评论,评论内容是什么等。实现不同的用户给同一个文章评论,只需在请求头里的token设置上我们登陆时拿到的就可以了。

实现不用的人给不同的文章评论:在评论接口下再添加一个数据元件,在请求入参的时候,用上这个变量就可以了。jmeter实现的原理我猜测应该是用的2层for循环,第一层for循环控制用户,第2层for循环控制的是每个用户对不同的文章。所以设置线程数的时候要是两者的乘积。以后有时间可以研究下jmeter源码。

记一次jmeter多用户并发测试_第4张图片

仅一次控制器

记一次jmeter多用户并发测试_第5张图片

dubbo

Dubbo接口需要下载dubbo插件才能使用,我下载的是jmeter-plugins-dubbo-1.3.6。

记一次jmeter多用户并发测试_第6张图片

记一次jmeter多用户并发测试_第7张图片

上面是一个dubbo的验票接口,每次只需从其他接口里拿到门票号,用户号就可以实现验票功能了。在平时业务测试时方便很多。

这些就是我工作中常用的,给了我很多帮助。jmeter太强大,还有很多功能需要我去学习,挖掘。

你可能感兴趣的:(工具)