第二篇-性能测试步骤

沃瑾瑜
2023-12-01

1. 性能测试的前提

1.1 做性能测试的必要性
  • 主管部门、监管部门审查
  • 设计生命财产安全
  • 大型新系统
  • 核心系统
  • 架构调整
  • 业务剧增
  • 重大缺陷修复
1.2 做性能测试的可测性
  • 有性能指标预期结果:根据需求文档或老板和产品提出的需求,将需求内容量化为性能指标值,即性能指标预期结果。

2. 性能测试的必备条件

2.1 独立网络

建议使用独立的直连局域网:

  • 压力机和服务器之间不要通过wifi、vpn、堡垒机、跳板机来连接,因为很容易网络不稳定造成性能指标值不准确

如果使用云服务器(公有):

  • 如果云服务器有内网、外网,建议使用外网,外网上行比较宽,可以基本忽略网络延迟。
2.2 独立环境

建议使用独立的测试环境,且测试环境的硬件环境最好和生产环境一致:

  • 不能与功能测试共用一套环境,做性能测试时,会短时间内占用大量的系统资源,很可能会导致功能不稳定或异常
  • 不能使用生产环境,做性能测试时,会使生产环境不稳定,而且会产生脏数据
  • 硬件环境与生产环境一致,这样得到的性能指标值才会更接近生产环境

3. 性能测试步骤

3.1 性能测试准备
  • 需求分析,熟悉业务,确定需要重点关注的点
  • 明确预期性能指标值和测试范围
  • 制定测试方案、测试计划、做好工作量评估
  • 制定测试模型(编辑测试用例):比如负载测试,场景要如何设计
3.2 搭建性能测试环境
  • 技术准备:选择性能测试工具;测试方案中涉及到的技术问题;测试数据的收集方案实现;如何监控系统资源
  • 被测系统环境搭建(服务器、服务版本更新、数据库数据准备)
  • 网络配置
  • 创建初始数据:如测试账号
3.3 性能测试脚本开发
  • 选取协议
  • 制作脚本
  • 调试脚本
  • 验证脚本
3.4 性能测试执行
  • 试运行
  • 场景执行
  • 收集并整理测试数据
3.5 性能测试结果分析与调优
  • 分析依据:结果图表
  • 分析思路:服务器硬件瓶颈>网络瓶颈>服务器os瓶颈(参数配置、数据库、web服务器)>应用瓶颈(sql语句、数据库设计、业务逻辑、算法)
  • 调优
  • 修改脚本或场景
  • 性能回归,和之前的测试数据进行对比,是否有优化

服务器硬件瓶颈:如果性能测试环境和生产环境的硬件相差甚远,那么硬件很大程度造成了性能瓶颈,也不用去分析后面可能会导致性能瓶颈的其他原因了

3.6 性能测试报告与结果跟踪
  • 性能测试报告:整理调优前后的测试数据
  • 性能测试问题跟踪
  • 构建持久化的性能监听平台,监听线上服务器的系统资源
 类似资料: