如何使用JMeter对系统进行多场景负载测试
2026/5/10 1:55:04 网站建设 项目流程

以下是使用 JMeter 进行电商系统购物车多场景负载测试的详细步骤和脚本说明。测试场景比例设置为:添加商品(30%)、浏览商品(50%)、结算操作(20%)。


1. 测试目标

模拟真实用户行为,验证购物车在高并发场景下的性能表现:

  • 添加商品(30%)
  • 浏览商品(50%)
  • 结算操作(20%)

2. JMeter 脚本设计

脚本结构
测试计划 │ ├─ 线程组(模拟并发用户) │ │ │ ├─ HTTP请求默认值(配置域名、端口等) │ │ │ ├─ CSV数据文件(参数化商品ID、用户凭证) │ │ │ ├─ 吞吐量控制器(添加商品 - 30%) │ │ └─ HTTP请求:添加商品接口 │ │ │ ├─ 吞吐量控制器(浏览商品 - 50%) │ │ └─ HTTP请求:浏览商品接口 │ │ │ ├─ 吞吐量控制器(结算操作 - 20%) │ │ └─ HTTP请求:结算接口 │ │ │ └─ 查看结果树 & 聚合报告(结果监听器)

关键配置步骤
(1) 线程组配置
  • 线程数(用户数):100
  • Ramp-Up 时间:60秒(逐步增加并发)
  • 循环次数:Forever(持续运行至手动停止)


多场景负载测试配置

(2) 吞吐量控制器配置

通过Throughput Controller控制操作比例:

  • 添加商品(30%)
    • 模式:Percent
    • 值:30
  • 浏览商品(50%)
    • 模式:Percent
    • 值:50
  • 结算操作(20%)
    • 模式:Percent
    • 值:20


(3) HTTP请求示例
添加商品接口
名称:添加商品 方法:POST 路径:/cart/add 参数: product_id=${product_id} // 从CSV读取 quantity=1
浏览商品接口
名称:浏览商品 方法:GET 路径:/cart/list
结算接口
名称:结算 方法:POST 路径:/cart/checkout 参数: payment_method=credit_card

(4) 参数化设置

使用CSV Data Set Config动态读取数据:

  • 文件名product_ids.csv
  • 变量名product_id
  • 文件内容示例
    product_id 1001 1002 1003

3. 执行测试

  1. 启动 JMeter,加载脚本
  2. 配置监听器(聚合报告、响应时间图)
  3. 点击运行按钮(▶️)开始测试

4. 结果分析

  • 聚合报告:关注TPS错误率平均响应时间
  • 响应时间图:观察响应时间是否稳定
  • 服务器资源监控:配合Grafana+Prometheus监控 CPU/内存


5. 注意事项

  1. 动态会话:添加HTTP Cookie管理器保持用户会话
  2. 思考时间:在操作间添加固定定时器(如 2秒)模拟用户停顿
  3. 断言:对接口返回结果添加JSON断言验证业务逻辑正确性

通过以上配置,即可模拟真实用户操作比例下的购物车负载场景

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询