自动化测试实战篇(8),jmeter并发测试登录接口,模拟从100到1000个用户同时登录测试服务器压力

在这里插入图片描述

首先进行使用jmeter进行并发测试之前就需要搞清楚线程和进程的区别

进程是资源分配最小单位,线程是程序执行的最小单位;
每个进程内部会有N个线程,但至少要有1个线 程。
比如公司就是一个进程,公司的员工就是线程。
线程占用的资源要⽐进程少很多。
线程之间通信比进程更方便

还需要理解什么是并发、高并发、并行。

并发是指在一个时间段内有多个进程在执行
并行指的是在同一时刻有多个进程在同时执行
高并发是使用技术手段使系统可以并行处理很多请求

还需要理解高并发中的

响应时间(Response Time)
吞吐量(Throughput)
每秒查询率QPS(Query Per Second)
每秒事务处理量TPS(Transaction Per Second)
同时在线用户数量

以及老生常谈的,TCP三次握手协议和TCP四次握手协议

TCP三次握手协议指:

第一次握手:建立连接时,客户端发送syn包到服务器,并等待服务器确认
第二次握手:服务器收到syn包,同时自己也给客户端发送一个确认包syn+ack包
第三次握手:客户端收到服务器syn+ack包,向服务器发送一个确认包

包发送完毕后,客户端和服务器进入连接成功,完成三次握手,双方通信完毕,关闭连接时,进行第四次挥手

TCP四次挥手协议:

第一次挥手:客户端发送一个fin包,申请断开连接,并等待服务器确认。
第二次挥手:服务端回复一个ACK包,表示接收到客户端的关闭连接请求,但是现在服务端还是不能马上关闭,需要检查下是否还有未处理完成的数据
第三次挥手:服务端处理完所有数据,给客户端发送fin包,表示可以断开连接
第四次挥手:客户端回复ACK包,表示断开连接

进入Jmeter,新建一个线程组

在这里插入图片描述
在这里插入图片描述

线程数:表示模拟的用户数量我们本次从100到1000,每次压测+100

Ramp-up就是每个线程的执行时间间隔,0表示并发

循环次数表示循环多少次,如果点击永远就是一直循环下次

调度器表示开始时间和持续时间以及启动延迟的时间

新建一个HTTP请求

在这里插入图片描述

模拟用户同时登录,这里使用cms搭建的后台有需求可以自行搜索

在这里插入图片描述
因为需要模拟同时登录,所以就要在请求体里面加入相应的信息进去
在这里插入图片描述

添加这三个监控器

在这里插入图片描述
再添加一个常数吞吐量定时器
在这里插入图片描述

模拟线程数:100

在这里插入图片描述
在这里插入图片描述

模拟线程数:200

在这里插入图片描述
在这里插入图片描述

模拟线程数:400

在这里插入图片描述
在这里插入图片描述

模拟线程数:800

在这里插入图片描述
在这里插入图片描述

模拟线程数:1000

在这里插入图片描述
在这里插入图片描述

总结

可以看到在100的时候服务器还算是比较稳定,200时也是较为平稳,到400时就开始有些走势不稳,到800时已经开始出现走势乱的情况,到1000时就出现不少的数据异常以及偏离值严重。可以根据项目情况去不断增加压力进行测试
在这里插入图片描述

您可以使用 JMeter 来进行 App 的性能测试。以下是一些步骤来帮助您开始: 1. 下载和安装 JMeter:您可以从 JMeter 官方网站(https://jmeter.apache.org/)下载最新版本的 JMeter,并按照指示进行安装。 2. 准备测试环境:确保您已经准备好了一个可以用来执行性能测试的设备或模拟器,并且已经安装了待测试的 App。 3. 创建测试计划:启动 JMeter,并创建一个新的测试计划。右键单击测试计划,选择 "添加" -> "线程组" 来创建一个线程组。线程组代表了并发用户的行为。 4. 添加 Sampler:在线程组下,右键单击选择 "添加" -> "Sampler" -> "HTTP 请求"。在 HTTP 请求中,您可以配置请求的 URL、方法和参数等。 5. 配置线程组:在线程组上右键单击,选择 "添加" -> "配置元件" -> "HTTP Cookie 管理器" 和 "HTTP 缓存管理器"。这些配置元件将帮助您处理 Cookie 和缓存。 6. 添加 Listener:在线程组下,右键单击选择 "添加" -> "监听器" -> "聚合报告"。聚合报告将显示性能测试结果的摘要信息。 7. 配置监听器:在聚合报告上右键单击,选择 "配置"。在配置对话框中,您可以设置报告的文件名、输出格式等。 8. 运行测试:单击 JMeter 工具栏上的 "启动" 按钮,开始运行性能测试JMeter模拟并发用户的行为,并记录性能指标。 9. 查看结果:测试运行完成后,您可以在聚合报告中查看性能测试的结果。您可以查看响应时间、吞吐量、错误率等指标。 请注意,这只是一个简单的示例,您可能需要根据您的具体需求进行更多的配置和调整。此外,JMeter 还支持其他功能,如参数化、断言、数据驱动等,您可以根据需要进行进一步的学习和使用。 希望这些步骤能帮助您开始使用 JMeter 进行 App 的性能测试!如有更多问题,请随时提问。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

轻烟飘荡

我想吃甜筒

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值