【性能测试】4_性能测试基础 _流程(重点)

文章目录

  • 一、如何开展工作
  • 二、性能测试流程
    • [2.1 性能测试需求分析](#2.1 性能测试需求分析)
    • [2.2 性能测试计划及方案](#2.2 性能测试计划及方案)
    • [2.3 性能测试用例](#2.3 性能测试用例)
    • [2.4 建立测试环境](#2.4 建立测试环境)
    • [2.5 测试脚本编写/录制](#2.5 测试脚本编写/录制)
    • [2.6 执行测试脚本](#2.6 执行测试脚本)
    • [2.7 性能测试监控](#2.7 性能测试监控)
    • [2.8 性能分析和调优](#2.8 性能分析和调优)
    • [2.9 性能测试报告总结](#2.9 性能测试报告总结)

一、如何开展工作

yacas 复制代码
思考:为什么要掌握性能测试流程?
解答:功能测试需要按照流程来推进, 性能测试也同样, 一套完整的测试流程是一次成功性能测试的基石

软件测试工程师,初入职,如何开展工作:
1、部署环境(工作环境)
2、了解项目需求
    -约产品经理讲解
	-约测试主管
	-约项目组经验丰富的同事
3、了解项目的进度
4、了解自己所负责的测试内容,梳理自己工作计划

二、性能测试流程

yacas 复制代码
1. 性能测试需求分析
2. 性能测试计划及方案
3. 性能测试用例
4. 建立测试工具环境(项目环境早在功能测试之前已经搭建好)
5. 测试脚本编写/录制 
6. 执行测试脚本
7. 性能测试监控
8. 性能分析和调优
9. 性能测试报告总结

提示: 使用不同的性能测试工具时, 主要流程是不变的

2.1 性能测试需求分析

说明: 性能需求分析是整个性能测试工作开展的基础, 性能需求分析做的好不好直接影响到性能测试的结果。

性能需求分析的目标:

1、明确被测系统

yacas 复制代码
- 熟悉被测系统的业务功能
- 熟悉被测系统的技术架构

2、明确性能测试内容

yacas 复制代码
从业务角度明确测试内容
- 确定关键业务。 即:用户使用频率较高的业务功能。

从技术角度明确测试内容
- 如:通常逻辑复杂度较高的业务也是CPU密集运算较大的地方,考量服务器CPU在预定性能指标下是否达标.
- 如:通常数据量较大的业务很占用系统内存,考量服务器内存在预定性能指标下是否达标。

3、明确性能测试策略

yacas 复制代码
- 基础测试 
- 负载测试
- 稳定性测试
- ·········根据实际系统的业务,分析是否需要并发测试、压力测试等。

4、明确性能测试指标

yacas 复制代码
无明确需求指标:
- 通过查找相关资料,和类似的系统对比,以及对未来流量的预估,确定性能测试需求的指标。

有明确需求指标:
- 只需要根据执行分析结果与预期指标做对比,如果有不满足的,就需要分析问题所在。
  ------例如, 类似如下指标
	•下订单业务并发20个用户
	•平均响应时间要小于等于3s
	•事务成功率为100%
	•CPU使用率小于等于85%

2.2 性能测试计划及方案

说明: 性能测试实施第一份文档, 也是最重要的一份文档 。

从模板内容来说,与功能测试基本一致,主要就是写清楚测什么、谁来测、怎么测。

yacas 复制代码
1. 项目背景---------简介
2. 测试目的
3. 测试范围---------对于需求分析中的性能测试内容
4. 测试策略---------对应于需求分析中的测试策略
5. 风险控制---------技术风险、人力风险
6. 交付清单---------每个阶段的产出物
7. 进度与分工-------谁在什么时候做什么事
1.测什么 2.谁来测 3.怎么测
项目背景 进度与分工 测试策略
测试目的 交付清单
测试范围

2.3 性能测试用例

要素:用例标题、用例编号、用例描述、用例前置条件、用例步骤和预期结果、用例实际结果。

(实际结果:需要监控的各项性能指标)

2.4 建立测试环境

1、在进行性能则试之前,需要先完成性能 测试工具 环境的搭建工作。

2、部署性能测试 使用的 项目环境。

  • 要求:硬件、软件、网络 必须与线上环境完全一致。(一般情况下可以要求运维和开发工程师协助完成 )
  • 一部分项目,直接使用线上环境展开性能测试

2.5 测试脚本编写/录制

说明: 性能测试用例编写完成以后, 接下来就需要结合用例的需要, 进行测试脚本的编写工作。

提示: 录制或编写, 根据不同的工具要注意代码冗余。

注意:没有能力写脚本的人,才会进行录制,极力不推荐使用脚本录制。

2.6 执行测试脚本

说明: 先保证脚本调试通过之后, 才能进入正式压测阶段。

执行测试脚本时, 要先进行性能运行场景的设置, 再运行脚本。

2.7 性能测试监控

性能监控就是监控服务器的各项性能指标。 例如: 监控CPU、 内存、 网络、 TPS、 磁盘IO等

结合工具+命令来监控。

2.8 性能分析和调优

说明:性能测试分析人员经过对结果的分析以后,如果不符合性能需求,则会提出性能bug,然后由开发人员进行后续的调优。

提示:

  • 调优--开发人员为主导,运维工程师(系统工程师、网络工程师)、DBA(数据库管理员)、性能测试分析人员配合进行。
  • 验证--性能测试人员继续进行第二轮、第三轮......的测试,与以前的测试结果进行对比,从而确定经过调整以后系统的性能是否有提升。
yacas 复制代码
系统调优由易到难的先后顺序如下:
1. 硬件问题(CPU、内存、硬盘)
2. 网络问题
3. 中间件(应用服务器)、 数据库等配置问题
4. 源代码、 数据库脚本问题
5. 系统构架问题

2.9 性能测试报告总结

测试报告是对性能测试工作的总结,为软件后续验收和交付打下基础。

性能测试总结要包含以下内容:

  1. 生成的性能测试报告图表(以 图 和 表 为主)。
  2. 体现测试过程中,出现性能瓶颈的位置、原因、解决的思路、调优的方法。
  3. 当前项目在测试过程中的风险如何处理,未来项目存在哪些性能风险。
  4. 总结项目测试过程中的经验和教训,以备后续项目反复出现!
yacas 复制代码
测试报告的主要内容:
- 测试工作的经过回顾
- 缺陷分析和调优
- 风险评估
- 性能测试结果
- 测试工作总结与改进
相关推荐
少云清2 天前
【性能测试】3_性能测试基础 _指标
运维·服务器·数据库·性能测试·性能测试指标
Wpa.wk3 天前
性能测试-初识性能测试基础(性能测试流程,计划等)
java·运维·经验分享·测试工具·性能测试
测试者家园3 天前
AI 智能体如何构建模拟真实用户行为的复杂负载场景?
人工智能·压力测试·性能测试·智能体·用户行为·智能化测试·软件开发和测试
测试秃头怪5 天前
支付宝性能测试案例分析详解
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·性能测试
大千AI助手9 天前
Web 接口性能测试最佳实践:从“压一压”到“压明白”
python·api·性能测试·测试·性能·压测·大千ai助手
软件测试小仙女13 天前
告别手工分析!Python+HAR一键生成页面性能测试报告
自动化测试·软件测试·python·测试开发·测试工具·性能测试·测试报告
p@nd@17 天前
测试linux页缓存对磁盘IO的影响
linux·性能测试·页缓存
百度测试开发20 天前
测试经验分享,Web自动化测试+性能测试面试项目讲解(详情)
自动化测试·软件测试·软件测试工程师·接口测试·软件测试项目·软件测试面试·性能测试
草莓味的¥猪22 天前
JMeter 4000并发压测实战教程
jmeter·性能测试