如何用jmeter实现并发

所谓并发,是指在操作系统中,一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。这里描述两种并发情况:

1、相同输入,多个用户。

这种情形比较简单,用线程代表用户,输入几个线程数,就代表几个用户,只需输入相关参数即可实现。

首先打开我们的jmeter:

创建一个测试计划,添加一个线程组,填写参数,10个线程数+ramp-up3s,模拟间隔时间内发送请求:

接下来添加http请求、http信息头管理器,需注意实现http请求需要给http信息头管理器添加Content-Type,如下图:

因为本次http请求响应体的json结构,添加json断言,为json断言设置参数和预期值,判断断言的目标数据中,判断指定的Json表达式是否有效,Json表达式指定的数据与预期数据是否一致,如果不一致,断言失败,一致则成功。

添加http请求,添加消息体:

然后添加定时器、擦看结果树、聚合报告,可以查看本次并发细则:

2、多个用户、不同输入。

注意到上面的场景消息体只能输入想同的参数,我们不禁想到,如果输入不同的参数输入怎么办?这里可以用csv文件。csv文件:是指"逗号分隔值"(Comma-Separated Values)文件,它是一种简单的文件格式,用于存储表格数据,例如电子表格或数据库,可以用记事本和Excel打开,如用记事本打开的话,每一列数据用逗号隔开。适用于这个场景:需要对一个请求进行多次重复测试,并使用不同的输入数据进行参数化。

http请求及其它元件上面场景已经接受,这里就不赘述啦!

首先我们新建一个csv文件,可以在记事本输入数据,再修改文件扩展名也是可行的。如参数.csv文件内容:

这里只写了一个参数,若是多个,用逗号隔开即可,如:

然后点击csv数据文件设置,选择刚刚设置的csv文件即可。

然后注意为csv文件设置参数,如下:

点击绿色“△”符号,即可启动运行,“stop”提示置灰运行结束。

好了,本次分享就到这里了!共勉!

### 如何使用 JMeter 实现并发性能测试 #### 创建并配置线程组 为了模拟多个用户的并发访问,在JMeter中创建一个线程组来定义虚拟用户数量、启动延迟以及循环次数。这有助于设定预期的负载条件[^1]。 ```java // 设置线程数(即并发用户数)、坡道时间(单位秒,用于控制增加到最大用户量的速度),以及每个线程执行采样器的数量。 Thread Group { Number of Threads (users): 50 // 并发用户数目 Ramp-Up Period(in seconds): 60 // 增加至最大用户所需的时间 Loop Count: 1 // 循环次数 } ``` #### 添加 HTTP 请求默认值和具体请求 为了让测试更加贴近实际环境,可以通过HTTP Request Defaults指定服务器名称或IP地址等公共参数,减少重复输入的工作量。接着添加具体的HTTP请求以描述被测接口的行为特征[^2]。 ```http GET /api/v1/resource?param=value HTTP/1.1 Host: example.com Connection: keep-alive Accept: */* ``` #### 配置监听器收集数据 利用诸如“查看结果树”这样的监听器组件实时观察响应情况;而像“聚合报告”之类的统计型监听器则能汇总关键指标如平均响应时间和吞吐率等重要信息以便于后期分析评估[^3]。 | Label | # Samples | Average(ms) | Min(ms)| Max(ms) | |--|-------------|--------|---------| | API Call A | 1,000 | 87 | 45 | 192 | #### 执行并发测试 当所有必要的元件都已就绪之后就可以点击绿色播放按钮开始运行整个计划了。此时JMeter会按照之前所设好的规则发起一系列连续不断的请求直到结束为止[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值