JMeter性能测试实训报告
- 基本信息
名称: |
JMeter性能测试 |
时间: |
6月7日 |
测试人: | |
学号: | |
年级专业班级: |
22级软件工程专业1班 |
目标: |
深入理解性能测试的基本概念,包括性能指标(如响应时间、吞吐量、资源利用率等)的定义与重要性,明确性能测试与功能测试的区别与联系。 掌握 JMeter 的安装、配置及使用方法,能够运用其丰富的组件(如线程组、采样器、监听器等)搭建多样化的测试场景,精准模拟不同业务场景下的用户请求,确保测试结果真实反映系统性能。 能够依据实际业务需求,设计科学合理的性能测试方案,涵盖测试目标设定、测试场景规划、测试数据准备等关键环节,培养从宏观角度把控测试流程,确保测试工作的系统性与有效性。 |
- 测试思路与测试环境
- 测试思路
- 本次性能测试主要围绕两个核心业务功能进行:
- 三角形类型判断 (登录后调用 API 判断三角形类型)
- 供应商管理 (批量添加供应商)
- 通过 JMeter 构建多线程测试场景,模拟多个用户并发执行操作,收集并分析性能数据,如响应时间、吞吐量和异常率等。
- 本次性能测试主要围绕两个核心业务功能进行:
- 测试环境
- 操作系统 :Windows 11
- 测试工具 :Apache JMeter 5.6.3
- 被测应用部署环境 :本地 Web 服务器
- 网络环境 :局域网,IP 地址为 https://10.6.19.225
- 测试思路
- 测试内容
-
- 测试对象分析说明
- 本次测试涉及两个主要业务模块:
- 三角形类型判断服务 :用于验证输入的三边长度是否构成三角形,并判断其类型。
- 供应商管理系统 :提供批量添加供应商的功能,用于企业资产管理。
- 这两个业务模块分别代表了基础业务逻辑和数据处理能力的性能测试场景。
- 本次测试涉及两个主要业务模块:
- 测试对象分析说明
-
- 测试步骤说明
- 准备测试脚本 :
- 在 JMeter 中创建线程组,设置线程数、循环次数。
- 配置 HTTP 请求采样器,指向目标接口地址。
- 添加响应断言,确保返回结果符合预期。
- 添加监听器(如“查看结果树”、“聚合报告”)以获取测试结果。
- 执行测试 :
- 运行测试计划,模拟用户并发访问。
- 记录响应时间、吞吐量等性能指标。
- 结果分析 :
- 导出 CSV 文件,使用 Excel 或其他工具进行统计分析。
- 对比不同测试场景的表现。
- 准备测试脚本 :
- 测试步骤说明
-
- 具体的测试用例列表
编号 |
测试用例名称 |
描述 |
预期结果 |
1 |
登录系统(密码错误) |
输入错误密码尝试登录 |
返回错误提示 |
2 |
登录系统(账号错误) |
输入错误账号尝试登录 |
返回错误提示 |
3 |
登录系统(正常) |
使用正确账号密码登录 |
成功登录并返回令牌 |
4 |
一般三角形 |
输入三边组成一般三角形 |
正确返回“一般三角形” |
5 |
直角三角形 |
输入直角三角形的三边 |
正确返回“直角三角形” |
6 |
等边三角形 |
输入三边相等的三角形 |
正确返回“等边三角形” |
7 |
等腰三角形 |
输入两等边的三角形 |
正确返回“等腰三角形” |
8 |
不构成三角形 |
输入不满足三角形条件的三边 |
正确返回“不构成三角形” |
9 |
边长超范围 |
输入超过允许范围的边长 |
正确返回“边长超范围” |
10 |
批量添加供应商 |
提交供应商批量导入请求 |
成功添加所有供应商 |
- 测试结果与分析
- 三角形类型测试结果
测试用例名称 |
平均响应时间 (ms) |
最小值 (ms) |
最大值 (ms) |
标准偏差 |
异常率 (%) |
吞吐量 (请求数/秒) |
接收 KB/sec |
发送 KB/sec | |
登录系统密码错误 |
619 |
619 |
619 |
0 |
0 |
1.62 |
0.87 |
0.38 | |
登录系统账号错误 |
8 |
8 |
8 |
0 |
0 |
125 |
67.02 |
29.05 | |
登录系统正常 |
481 |
481 |
481 |
0 |
0 |
2.08 |
1.48 |
0.48 | |
一般三角形 |
6 |
6 |
6 |
0 |
0 |
166.67 |
99.45 |
67.87 | |
直角三角形 |
4 |
4 |
4 |
0 |
0 |
250 |
145.75 |
101.81 | |
等边三角形 |
5 |
5 |
5 |
0 |
0 |
200 |
119.34 |
81.45 | |
等腰三角形 |
4 |
4 |
4 |
0 |
0 |
250 |
148.93 |
101.81 | |
不构成三角形 |
4 |
4 |
4 |
0 |
100 |
250 |
146.24 |
101.81 | |
边长超范围 |
4 |
4 |
4 |
0 |
0 |
250 |
136.72 |
103.27 | |
总体 |
126 |
4 |
619 |
228.9 |
11.11 |
7.87 |
4.62 |
2.75 |
-
-
- 分析
- 登录系统账号错误 和 密码错误 的响应时间较短,表明系统能够快速识别非法请求并拒绝访问。
- 不构成三角形 用例的异常率为 100%,说明该测试失败,可能由于响应内容未包含预期的文本 "不构成三角形"。
- 直角三角形 和 等腰三角形 的吞吐量最高,达到 250 请求/秒,表明系统对这些请求处理效率较高。
- 总体平均响应时间 为 126ms,标准偏差较大,主要是由于部分测试用例响应时间差异较大(如登录系统的 481ms 和三角形类型的 4ms~6ms)。
- 分析
- 供应商管理测试结果
-
测试用例名称 |
平均响应时间 (ms) |
最小值 (ms) |
最大值 (ms) |
标准偏差 |
异常率 (%) |
吞吐量 (请求数/秒) |
接收 KB/sec |
发送 KB/sec |
登录系统正常 |
974 |
974 |
974 |
0 |
0 |
1.03 |
0.73 |
0.24 |
批量添加供应商 |
236 |
132 |
374 |
80.58 |
0 |
4.22 |
2.2 |
2.57 |
总体 |
359 |
132 |
974 |
284.63 |
0 |
2.74 |
1.51 |
1.49 |
-
-
- 分析
- 登录系统正常 的响应时间较长(974ms),可能是由于认证机制较为复杂或数据库查询耗时。
- 批量添加供应商 的平均响应时间为 236ms,最大值为 374ms,最小值为 132ms,标准偏差为 80.58,说明每次请求的执行时间波动较大。
- 整体来看,供应商管理模块的吞吐量较低(2.74 请求/秒),需进一步优化系统性能。
- 分析
-