Day4-性能测试与性能监控
性能测试实战
简介
- 服务端性能测试。
知识模块
- 性能测试体系 L1
- 性能测试工具-JMeter 常用组件 L1
- 性能测试工具-JMeter 参数化与并发 L2
知识点
- 掌握性能测试基本概念。
- 掌握 JMeter 的安装配置。
- 掌握 JMeter 常用组件。
受众
- 中级测试开发工程师
场景简介
点菜系统即将上线。为了应对预期的高并发流量,测试团队负责对系统进行性能测试,确保其稳定性和可扩展性。本次测试将分为几个阶段:需求分析、场景设计、测试执行和结果分析。
人物简介
- 项目经理:掌控全局,负责与客户和开发团队沟通,确保项目按期上线。对系统性能测试的期望很高,面对时间压力,时常对测试团队施压。
- 测试组长:负责性能测试的总体规划和协调。需要将项目经理的要求转化为可执行的测试方案,确保团队的工作质量和进度。
- 性能测试工程师:负责实际的性能测试执行,包括压力测试、负载测试、容量测试等。他们会使用 JMeter 等工具进行测试,并处理复杂的场景设计和脚本编写。
- 开发团队代表:负责根据测试反馈调整系统。需要与测试团队紧密协作,快速修复性能问题。
- 运维团队代表:负责系统环境的搭建和优化,协助性能测试工程师模拟真实的生产环境。
剧本情节
场景一:需求分析
- 目标:明确性能测试的目标和指标。
- 情节:项目经理召开会议,要求测试团队确保系统能承载 1 万同时在线用户,页面响应时间不超过 3 秒。开发团队对数据库进行优化,运维团队确保环境配置合理。
- 任务:测试团队需要设计出性能测试的场景,包括并发用户数、请求数、系统资源占用等。玩家需要讨论并确定测试指标。
场景二:测试场景设计
- 目标:编写测试脚本并设计不同的测试场景。
- 情节:性能测试工程师使用 JMeter 编写脚本,设计出多个关键业务场景,包括登录、浏览菜单、确认订单等。并需要在有限的时间内完成脚本的编写和调试。
- 任务:玩家需要完成脚本设计和场景配置,并与开发和运维团队沟通,确保测试环境无误。
场景三:测试执行
- 目标:运行性能测试,分析初步结果。
- 情节:测试工程师开始进行压力测试,然而在并发数达到 5000 时,系统出现了瓶颈,导致响应时间大幅增加。开发团队立即开始调查,并发现数据库查询效率是瓶颈。项目经理施压要求尽快解决。
- 任务:玩家需要查找性能瓶颈,并与开发团队合作解决问题,调整脚本重新执行测试。
场景四:结果分析与优化
- 目标:分析测试结果,确定系统是否满足性能要求。
- 情节:测试团队重新运行测试,系统在并发 1 万时表现正常,但有少量异常请求。项目经理认为这是可以接受的,然而客户代表坚持认为必须达到 100% 的成功率,要求测试团队再次优化。运维团队建议增加服务器资源,开发团队继续优化代码。
- 任务:玩家需要决定是否进行进一步优化,评估测试结果并撰写性能测试报告,提交给项目经理和客户代表。
剧本复盘
总结
- 服务端性能测试实战