Skip to content

Day4-性能测试与性能监控

性能测试实战

简介

  • 服务端性能测试。

知识模块

  • 性能测试体系 L1
  • 性能测试工具-JMeter 常用组件 L1
  • 性能测试工具-JMeter 参数化与并发 L2

知识点

  • 掌握性能测试基本概念。
  • 掌握 JMeter 的安装配置。
  • 掌握 JMeter 常用组件。

受众

  • 中级测试开发工程师

场景简介

点菜系统即将上线。为了应对预期的高并发流量,测试团队负责对系统进行性能测试,确保其稳定性和可扩展性。本次测试将分为几个阶段:需求分析、场景设计、测试执行和结果分析。

人物简介

  1. 项目经理:掌控全局,负责与客户和开发团队沟通,确保项目按期上线。对系统性能测试的期望很高,面对时间压力,时常对测试团队施压。
  2. 测试组长:负责性能测试的总体规划和协调。需要将项目经理的要求转化为可执行的测试方案,确保团队的工作质量和进度。
  3. 性能测试工程师:负责实际的性能测试执行,包括压力测试、负载测试、容量测试等。他们会使用 JMeter 等工具进行测试,并处理复杂的场景设计和脚本编写。
  4. 开发团队代表:负责根据测试反馈调整系统。需要与测试团队紧密协作,快速修复性能问题。
  5. 运维团队代表:负责系统环境的搭建和优化,协助性能测试工程师模拟真实的生产环境。

剧本情节

场景一:需求分析

  • 目标:明确性能测试的目标和指标。
  • 情节:项目经理召开会议,要求测试团队确保系统能承载 1 万同时在线用户,页面响应时间不超过 3 秒。开发团队对数据库进行优化,运维团队确保环境配置合理。
  • 任务:测试团队需要设计出性能测试的场景,包括并发用户数、请求数、系统资源占用等。玩家需要讨论并确定测试指标。

场景二:测试场景设计

  • 目标:编写测试脚本并设计不同的测试场景。
  • 情节:性能测试工程师使用 JMeter 编写脚本,设计出多个关键业务场景,包括登录、浏览菜单、确认订单等。并需要在有限的时间内完成脚本的编写和调试。
  • 任务:玩家需要完成脚本设计和场景配置,并与开发和运维团队沟通,确保测试环境无误。

场景三:测试执行

  • 目标:运行性能测试,分析初步结果。
  • 情节:测试工程师开始进行压力测试,然而在并发数达到 5000 时,系统出现了瓶颈,导致响应时间大幅增加。开发团队立即开始调查,并发现数据库查询效率是瓶颈。项目经理施压要求尽快解决。
  • 任务:玩家需要查找性能瓶颈,并与开发团队合作解决问题,调整脚本重新执行测试。

场景四:结果分析与优化

  • 目标:分析测试结果,确定系统是否满足性能要求。
  • 情节:测试团队重新运行测试,系统在并发 1 万时表现正常,但有少量异常请求。项目经理认为这是可以接受的,然而客户代表坚持认为必须达到 100% 的成功率,要求测试团队再次优化。运维团队建议增加服务器资源,开发团队继续优化代码。
  • 任务:玩家需要决定是否进行进一步优化,评估测试结果并撰写性能测试报告,提交给项目经理和客户代表。

剧本复盘

总结

  • 服务端性能测试实战