性能测试流程分享

Posted 软件测试资源共享站

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了性能测试流程分享相关的知识,希望对你有一定的参考价值。

性能测试流程导图】

【执行步骤细化】

阶段 执行步骤

说明

方案制定







文档收集

1、系统架构图:被测系统的技术架构,包括从客户端到DB的周转流程、应用服务器、中间件等

2、网络拓扑图:不同层级之间的网络拓扑关系

3、数据库表设计 

4、接口文档

目的确认

1、并发测试:被测系统在一定条件下可承受的最大并发数

2、容量测试:被测系统在一定配置下的最大服务能力

3、配置测试:验证系统在不同配置下的性能表现,为性能调优和扩容提供重要参考

4、验收测试:验证系统是否满足实际业务需要的性能表现

5、确定性测试:验证系统在一定压力下,长时间正常处理请求的能力

6、多节点测试:验证系统在服务集群下的负载均衡能力

压测场景及性能指标确认

例如:

登录(单个接口),最大TPS>4k,压力下平均响应时长<10ms

下单及列表更新操作(多接口),最大TPS>4k,压力下平均响应时长<10ms

测试环境确认

1、被测系统环境:FAT(生产环境)、UAT(验收环境)、预发布环境等

2、环境类型:docker容器、虚拟机或者其他类型

3、服务配置:连接数线程、队列、缓存等

4、服务器/DB登录账号、密码,服务部署路径、日志路径等

5、挡板/Mock:某些依赖关系较复杂的系统或者模块,是否需要挡板?如果需要挡板,是来提供?  

预埋数据方案确认

1、基础数据:比如基础模板数据、用户信息等

2、预埋/铺底数据:根据生产实际的数据量对测试环境的DB进行数据预埋,尽量和生产保持一致或可以等量换算

3、测试数据:数据生成规则,如加解密、随机生成等

4、垃圾数据:每轮测试产生的垃圾数据如何隔离或者清理

5、数据脱敏:如果是在生产环境进行压测,如何进行数据脱敏或者数据隔离防污染策略

测试准备 压测脚本准备 编写压测脚本、调试
测试执行前确认

1、容器:镜像克隆成功,服务部署完成,且完成功能性校验

2、压测机:测试机准备完成,并完成性能测试环境的调试验证

3、工具:相关监控工具等部署设置完成,比如服务器监控工具、DB监控工具等

4、网络:网络连接通畅(如果有防火墙策略,运维同事应在测试方案评审开始前准备完成,并告知相关人员调试验证)

5、数据:基础数据、预埋数据、测试数据准备完成(正确+可用+数据量级达标)

测试执行

执行测试


1、执行压测、记录数据、记录问题

2、排查、解决、回归问题

输出报告

1、整理优化的配置项信息及压测数据

2、输出测试报告,包含:压测目的、环境拓扑、环境配置、压测场景、性能指标及描述、测试结论

测试后续 重启服务,还原数据库

重启服务,还原数据库,验证服务可用性。

性能结果评估

根据测试报告,评估是否符合生产要求


【可参考的测试结论及其定义】

通过 无性能缺陷,且无风险提示
有限通过 存在小缺陷/优化级别缺陷,或有风险提示,但能满足当前生产环境性能要求
不通过 存在一般、严重、致命缺陷,无法满足生产环境性能要求


可参考的性能缺陷等级及其定义】

等级

定义

致命

造成被测系统出现致命性错误的包括但不限于以下情形:

1.内存泄漏、服务崩溃、死锁、死循环、连接泄漏等导致系统不可用;

2.因并发导致的业务逻辑错误、功能不可用等;

3.客户端长时间无响应、异常关闭、句柄泄漏、内存溢出等导致的客户端系统不可用。

严重

造成被测系统出现严重性能问题的包括但不限于以下情形:

1.系统核心功能的性能测试结果与指标要求偏差>20%;

2.严重影响用户体验,如:客户端操作响应超过8秒等;

3.严重影响系统正常运行的,包括但不限于CPU 使用率>80%、disk busy>80%等;

4.系统核心功能请求响应成功率<100%。

一般

造成被测系统出现性能问题的包括但不限于以下情形:

1.系统核心功能的性能测试结果与指标要求偏差超过 10%;

2.系统非核心功能的性能测试结果与指标要求偏差超过 20%;

3.影响用户体验,如:客户端操作响应超过4秒等

4.系统非核心功能请求响应成功率<100%。

小缺陷

系统非核心功能的性能测试结果与性能测试指标要求偏差超过10%或与上一版本性能测试结果偏差超过10%

优化 在满足性能指标前提下,有性能优化空间。

备注:核心指标包括但不限于:TPS(每秒事务数)、ART(平均响应时间)、并发数、批量业务处理时间等.



以上是关于性能测试流程分享的主要内容,如果未能解决你的问题,请参考以下文章

性能测试流程

性能测试总结测试流程

性能测试- 性能测试流程:

性能测试流程简介

性能测试流程

性能测试--测试流程篇