一次完整的压测+参数化

我们来写一个简单的单一http接口压测脚本,并将传参参数化
1、打开jmeter并创建一个线程组
一次完整的压测+参数化
2、给线程组添加http请求
一次完整的压测+参数化
如下图所示配置http请求,我们的接口地址是:https://xxx.xxx.com/xxx/xxx/getDictById
一次完整的压测+参数化
3、此处两个参数我们进行了参数化,那么我们需要创建CSV数据文件设置来实现参数化
一次完整的压测+参数化
数据文件设置
一次完整的压测+参数化
txt文件中参数如下,两组参数
一次完整的压测+参数化
4、现在我们可以执行http请求了,但是执行后,需要查看传参和返回的情况,所以我们需要添加结果树
一次完整的压测+参数化
设置线程组中线程和循环次数都为1,执行一次查看结果
一次完整的压测+参数化
5、如果只执行几次请求的话我们可以自己来看是否请求成功,但如果压测时有几万甚至几十万个请求,我们是没办法人工检查结果的,此时我们就用到了断言,我们给这个线程组加相应断言
一次完整的压测+参数化
我们看到当请求成功时,返回的数据会有"msg":“操作成功"这样的一个消息,所以我们把这部分加到响应断言里面
一次完整的压测+参数化
这样,当我们执行压测时,返回数据中没有"msg”:"操作成功"这部分的请求,结果树中就会是红色的×
一次完整的压测+参数化
6、现在可以发请求也可以检查结果了,我们还缺少什么呢?缺少统计,压测过程中的相应时间,吞吐,错误率,这些都是没办法用肉眼看到的,所以我们添加聚合报告来进行统计
一次完整的压测+参数化
我们执行一次10并发两次循环的压测,看聚合报告的结果
一次完整的压测+参数化
我们看到99%的请求都在114ms内返回,请求平均耗时62ms,吞吐量20/s
吞吐量是什么意思呢,就是每秒完成的事务数,是从发出请求到接收到服务器返回的完整事务,我们这次的结果就是每秒完成20个事务。
6、实际压测过程中还需要监控下cpu、数据库、带宽的使用情况,一般会有监控平台,在监控平台看就可以了。