图解jmeter压测http接口

此次压力测试是以一个http json的后台接口为例。

1. 创建相应的部件

hum5tjjv.xjm

2. 设置相应的参数

jaoyphtb.eti

线程组主要用于设置一共要测试的线程数量(上图1000),每秒起的线程数(上图10),几秒内启动完单循环内要跑的线程(上例子中为10秒内启动1000个线程,即通常所说的100并发),一共测试多少个循环(上图永远)。

je2ykpva.gkj

http请求主要用于设置 被测试服务器的 ip地址 端口 服务地址 请求体数据。

niykhfpb.2ig

http信息头管理器,主要用于设置http头字段信息,比如Content-Type。

i1dexihf.fvj

聚合报告 主要用于测试结果查看。

Error 表示请求失败的百分比,比如请求500或者404都算error。通常需要跑12-24小时。

Througghput表示吞吐量,通常按上图线程组的参数设置,需要达到的指标是200/s

3. 其他

    压力测试不仅能评估性能指标,还能验证程序的稳定性。比如db连接未关闭,文件句柄未关闭,并发未处理好等,这些问题上压力测试一压,在大量请求的考验下,基本上很快就能暴露出问题

4. 指定多个请求参数

上面的示例是多次压测请求都是一个参数。在某些时候我们需要不同的参数。 比如我10个线程并发,我需要这10个线程使用不同的10个报文。此时需要使用前置处理器用户参数。

rn0z5tji.1gk

然后点击右下的添加参数,添加一个参数 比如参数名是q

点击右下的添加用户, 如果你需要10个报文就添加10个参数,每个用户下填写对应的不同的要测试的报文值….

njwkxtew.s1h

在http请求的body data 页签上写上${q} 就可以达到目的了。

zqonhn4q.nvz

如果你http header中字段有同样的述求也可以这样玩,一样的,用${自定义的用户变量名}

原文地址:https://www.cnblogs.com/simoncook/p/5669331.html