怎样书写专业的落地性能测试计划?

news2025/2/22 13:12:18

目录

引言

  什么是性能测试计划

  性能测试计划包含的内容

  背景

  性能目标

  压测范围

  启停准则

  性能指标

  系统架构图

  压测前准备

  工具准备

  数据准备

  性能设计

  监控设计

  项目组织架构

  成果输出

  项目风险分析


引言

测试计划是软件测试流程中的一个重要步骤,它涉及到对软件产品进行全面的测试,以确保其满足客户需求和预期的质量标准。

  在进入今天的内容前, 先想几个问题:

  什么是测试计划?

  什么是性能测试计划?

  在你的性能知识领域中, 你认为性能测试计划应该包含哪些内容?

  无论是性能测试的小白还是高级性能测试工程师,几乎都没有认真的或者完整的去实施过性能测试计划。

  其实,导致这种现在的原因,无非两种:

  1、企业 不太注重 性能测试;

  2、测试人员本身的能力不足。

  看到这里, 你是不是会说, 你看:不是我不专业,不是我不想写专业的性能测试计划,只是我的企业对性能测试计划的要求不高。

  作为一名性能测试工程师,你的专业度,一定是高于企业里的其他人,所以,你要做的,就是把你的专业,无限的放大,来完善企业中的空白。

  切勿有这种想法:反正BOSS不专业, 我随便写几段话糊弄过去就行了。同时,也为了能让你在与面试官的聊天中,体现你的专业,让面试官"折服"你。

  什么是性能测试计划

  说道什么是性能测试计划, 我们就不得不提,什么是测试计划。引用官方文档:

  描述了要进行的测试活动的范围、方法、资源和进度的文档;

  是对整个信息系统应用软件组装测试和确认测试;

  它确定测试项、被测特性、测试任务、谁执行任务、各种可能的风险;

  测试计划可以有效预防计划的风险,保障计划的顺利实施。

  在项目的前期,测试计划是必须要做的,也是一名软件测试管理者必须具备的能力。一份完整的测试计划,可以:

  为测试各项活动制定一个现实可行的、综合的计划,包括每项测试活动的对象、范围、方法、进度和预期结果;

  确定测试所需要的时间和资源,以保证其可获得性、有效;

  确立每个测试阶段测试完成以及测试成功的标准、要实现的目标;

  识别出测试活动中各种风险,并消除可能存在的风险,降低由不可能消除的风险所带来的损失。

  你看, 测试计划的优势这么多:

  向上:领导做宏观调控;

  向下:测试人员了解项目不同阶段的测试任务。

  你还觉得测试计划的不重要吗?

  知道了测试计划,那我们再来聊一聊性能测试计划。简单的一句话概括:就是针对项目的性能制定的测试计划。

  测试计划包含整体测试的各个阶段:接口、功能、性能、自动化、集成等……

  而性能测试计划,就是针对性能测试的计划设定,理解了性能测试计划,那:

  性能测试计划包含哪些内容?

  以及如何编写有效的性能测试计划呢?

  如何让你的性能测试计划符合实际的项目呢?

  带着这些疑问,我们来逐一聊一聊。

  性能测试计划包含的内容

  说到性能测试计划, 我先上一个图:

  看到这份性能测试计划, 是不是感觉似曾相识。是不是与你编写的性能测试计划的方案一样?是不是觉得,这些内容,已经足够了?

  如果你是这样想,那么,还请你思考以下几个问题:

  如果没有性能目标,你能否进行性能测试;

  如果没有性能场景和性能指标,你能否编写性能脚本;

  如果没有系统架构图, 你能否快速的了解系统架构逻辑;

  如果没有部署监控,你能否快速的定位及分析性能瓶颈。

  你看,这些都是在实际的性能测试中需要的,那肯定就需要在性能测试计划中列出来。否则, 如何进行脚本设计,如何进行监控部署,如何发现问题,分析性能瓶颈呢?

  按照上面的思路, 我再提供一张性能测试计划图,来对比一下:

  通过这两张图的对比,可以发现,第二张图更完整,不管向上对老板,向下对员工,都是一目了然。所以,你可以发现,一份好的性能测试计划,即使给外行人看,也能知道要目的和要做的内容。

  这时候,你可能有疑问,我这份性能测试计划这么多内容,那要写多长时间呢?每一项的内容,又要如何来写呢?如何让一个性能测试小白,快速掌握性能测试计划的编写要领呢?

  这里,我就逐一进行拆解。

  背景

  先描述项目背景, 再阐述本次项目性能测试背景。

  性能目标

  结合性能测试的场景,设定测试目标,例如:

  根据基准场景:测试某接口的最大容量;

  根据稳定性场景:测试某接口的最大运行时间。

  压测范围

  根据系统的主流程,筛选需要压测的接口,如:

  计算接口;

  同步接口;

  其他主要接口。

  启停准则

  这里主要包含:

  启动准则:完事具备,需要开始进行性能测试;

  结束准则:所有测试任务都完成,结束测试;

  暂停准则:在测试过程中,因测试环境受到干扰无法进行测试,导致暂停测试;

  再启动准则:解决完测试过程中的问题,可以继续进行测试。

  性能指标

  包含内容,如下:

  目标接口;

  目标TPS;

  TPS标准方差;

  响应时间;

  响应时间标注方差。

  系统架构图

  系统逻辑架构图;

  系统部署架构图。

  压测前准备

  主要是硬件资源,例如:

  服务器台数:根据实际项目需要进行申请;

  服务器用途:数据库、缓存、集群、应用服务、监控服务部署等等;

  服务器配置:需要根据上线的服务器配置一样。

  工具准备

  压测工具:实际压测的工具,例如:Jmeter、Ladrunner、Lcust等;

  监控工具:Prmethues、Grafana、Kafka、Lgstash、Spring Bt Admin等。

  数据准备

  测试脚本数据的准备:

  读取csv文件的数据;

  直接写入数据库的数据。

  性能设计

  包含两部分,即:

  性能测试策略:连续、递增策略;

  业务场景设计:4种场景,如:基准场景、容量场景、稳定性场景、异常场景。

  监控设计

  包含两部分,如下:

  全局监控设计:如 Prmetheus、Grafana、Spring Bt Admin等;

  定向监控设计:对具体的应用、数据库等进行监控分析,如 jstack、mysqlreprt等。

  项目组织架构

  参与性能测试的项目组成员:

  PM

  架构师

  开发工程师

  性能测试工程师

  性能脚本编写工程师:性能测试分析工程师、运维

  成果输出

  包含三部分内容,即

  过程性输出:性能测试脚本、性能缺陷列表;

  性能测试报告;

  性能调优报告。

  项目风险分析

  主要通过以下几点进行分析:

  业务层的需求是否明确;

  环境问题;

  数据问题;

  业务模型;

  人员问题等等。

  你看,我把性能测试计划每一项的内容进行拆解, 这样是不是就通俗易懂了。

(WEB自动化测试、app自动化测试、接口自动化测试、持续集成、自动化测试开发、大厂面试真题、简历模板等等),相信能使你更好的进步!

留【自动化测试】即可

【自动化测试交流】:574737577(备注ccc)icon-default.png?t=N4P3http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=1MDs4T0SvhL4arRoq3njIVb9HGXrRoj6&authKey=sx1h5dj77OV5obrcx6nE7Dn3sqEVuE4XrGqzqneReBJy3ojOL3oHMSH48XPKPWhW&noverify=0&group_code=574737577

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/619567.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

面向教育行业的MDM(移动设备管理)解决方案

什么是面向教育的MDM 学校和教育机构的移动设备管理 (MDM) 通过将智能设备配置为适合教育用途,支持通过这些设备进行学习。面向教育的 MDM 解决方案允许组织的 IT 管理员或教学人员管理有助于学习的设备,如智能手机、平板电脑、笔…

十三、输出多个立方体并深度测试

第一部分概念 1)由来: 深度测试:opengl的深度测试是指在片段着色器执行之后,利用深度缓冲所保存的深度值决定当前片段是否被丢弃的过程。 深度缓冲区和颜色缓冲区是差不多的,有相同的宽高度,并且一般在窗…

实验篇(7.2) 06. 通过安全隧道访问远端内网服务器 (FortiClient-SSL) ❀ 远程访问

【简介】直接映射服务器到公网,没有验证不安全;通过Web浏览器访问远程内网服务器,有验证也安全,但是支持的协议太少。那有没有即安全,又能支持所有协议的访问方法呢?我们来看看SSL VPN的隧道模式。 实验要求…

智能动环监控系统,实时排查机房安全隐患

动环监控系统又称机房动环、机房动力环境监控系统、动环监控等, 是指对各机房的动力、环境、安防进行集中监测。可对监控系统、设备、安全运行状态进行实时监测、通过统计和处理相关数据,及早发现故障,及时通知运维人员处理;实现机…

员工工作服穿戴AI识别算法 yolov5

员工工作服穿戴AI识别算法是基于yolov5python网络模型人工智能技术,员工工作服穿戴AI识别算法对现场人员的工作服穿戴情况进行实时监控,并对违规情况将自动发出警报。我们选择当下YOLO卷积神经网络YOLOv5来进行火焰识别检测。现版本的YOLOv5每个图像的推…

高并发下缓存失效问题(穿透、雪崩、击穿),以及本地锁、Redis分布锁、Redisson锁、SpringCache使用

高并发下缓存失效问题-穿透、雪崩、击穿 1.缓存穿透2.缓存雪崩3.缓存穿透4.加锁4.1 本地锁4.2 Redis分布锁4.3 RedLock 分布式锁-Redisson**4.3.1 整合Redisson实现分布式锁**4.3.2 分布式锁 1)分布式锁 - - 可重入锁 2)分布式锁 - - 公平锁 3&#xff0…

Spring面试题(基础篇)

目录 一、Spring框架概述 1、什么是Spring? 2、spring优点有哪些? 二、IOC与DI 3、你知道getBean方法的有几种重载方式吗? 4、Spring有几种依赖注入方式? 三、Spring创建对象 5、Spring创建对象有几种方式? 6…

SciencePub学术 | 可再生能源类重点SCIEI征稿中

SciencePub学术刊源推荐: 可再生能源类重点SCI&EI征稿中!2区闭源正刊,进展顺利,稳定检索40年以上。信息如下,录满为止: 一、期刊概况: 可再生能源类重点SCI&EI 【期刊简介】IF:4.0-4.…

Win安装kafka

Win安装kafka 安装zookeeper修改zookeeper 配置文件 安装kafka启动kafka创建topic查看topic命令 用命令发布消息消费命令 安装zookeeper https://zookeeper.apache.org/releases.html 解压到文件夹 同时在解压目录中拆创建 data和 log文件夹 修改zookeeper 配置文件 - 复制 …

小程序多选框问题

项目场景&#xff1a; 提示&#xff1a;这里简述项目相关背景&#xff1a; 例如&#xff1a;前端小程序记录错误bug 问题描述 提示&#xff1a;这里描述项目中遇到的问题&#xff1a; 例如&#xff1a;前端循环数组时页面数据无法显示 <checkbox-group bindchange"…

【greenplum 性能优化】greenplum 数据库集群 如何释放占用内存

无意中发现了一个巨牛的人工智能教程&#xff0c;忍不住分享一下给大家。教程不仅是零基础&#xff0c;通俗易懂&#xff0c;而且非常风趣幽默&#xff0c;像看小说一样&#xff01;觉得太牛了&#xff0c;所以分享给大家。点这里可以跳转到教程。人工智能教程 在Greenplum数据…

想从事UE4开发相关工作,C++学到什么程度可以开始学习针对虚幻4的编程开发呢?

想从事UE4开发相关工作&#xff0c;C学到什么程度可以开始学习针对虚幻4的编程开发呢&#xff1f; 想从事UE4开发相关工作&#xff0c;C是一个必须要熟练掌握的语言。在学习C过程中&#xff0c;需要掌握语法、面向对象编程、数据结构和算法等内容&#xff0c;这些都是开发UE4所…

nginx修改配置文件不生效

1、问题描述 由于需要向其他公司的数据库中推送数据&#xff0c;但是对方公司的服务器只针对某一台服务器开放了端口&#xff0c;公司的datax部署在另外一台服务器中&#xff0c;导致不能正常连接数据库。因此做了nginx&#xff0c;进行两次代理&#xff0c;但是对方服务器突然…

企业——配置两条静态路由

要求1&#xff1a;按照图中要求配置IP地址&#xff0c;使用静态路由实现要求1、2 要求2&#xff1a;pc1访问pc2走下面 要求3&#xff1a;pc2访问pc1走上面&#xff0c;且两条线路互为备份 1.配置接口IP int g0/0/~ ip address ~ 2.配置静态路由&#xff0c;每个路由两条&a…

Vue3优雅地监听localStorage变化

目录 &#x1f4a1;前言 &#x1f4a1; 为什么要这样做&#xff1f; &#x1f48e; 思路 &#x1f48e; 实现 &#x1f697; 实现中介者模式 &#x1f697; 重写localStorage &#x1f697; 实现useStorage hook &#x1f48e; 测试 &#x1f697; 使用localStorage …

「大模型微调」使用 DDP 实现程序单机多卡并行指南

最近在大趋势的影响下&#xff0c;开始染指大模型。由于实验室计算资源的限制&#xff0c;需要使用单机多卡并行的方式运行程序&#xff0c;这里以 BLOOM-560m 模型为例&#xff0c;演示如何通过单机多卡DDP并行的方式微调完成下游任务。 目录 0. 基础篇- 两种分布式训练方式- …

网络安全自学笔记

一、怎么入门&#xff1f; 这个 Web 安全学习路线&#xff0c;整体大概半年左右&#xff0c;具体视每个人的情况而定。 &#xff08;上传一直很模糊&#xff0c;所以就没有展开了&#xff0c;需要高清版的可以在下面领取&#xff09; &#x1f449; 【一学习路线高清版一】&a…

Java操作mongodb(含分页,精确查询,模糊查询,时间区间,排序)进行查询

mongodb是常用的非关系型数据库&#xff0c;他经常用来存储文本数据&#xff0c;也就是JSON格式的数据。 不废话&#xff0c;直接上代码。注释写的很详细。&#xff08;有问题留言秒回&#xff09; public Page<Product> listProducts(ProductCond cond) {//如前端没传&a…

赛效:如何自动拼图在线实现多图合一

1&#xff1a;在电脑上打开改图鸭网页版&#xff0c;登录账号后在特色功能里点击“模板拼图”。 2&#xff1a;根据需要图片数量和特点选择对应的拼图模板&#xff0c;然后点击右侧模板里的上传图片。 3&#xff1a;图片添加完成后&#xff0c;除了可以直接在模板里拖动图片进行…

第六章 Electron|Node 实现license激活机制

一、license是什么 ✨ ⭐️ &#x1f31f; license许可证&#xff0c;一般用于软件的授权&#xff0c;我个人的理解就和我们平时的登录差不多。只是说登录时需要我们输入用户名和密码&#xff0c;license一般是开发方提供给你一串加密后的文本&#xff0c;通过这个文本进行一…