JMeter——书写性能测试计划书(九)
创始人
2025-05-29 02:28:20

第七章. 书写性能测试计划书

  1. 性能测试报告组成结构:
  • 项目概况(项目背景、测试目的、测试范围、指标术语定义、测试指标说明、测试责任人、测试时间)
  • 测试概要(测试场景、测试环境、测试类型、测试工具)
  • 测试结果(并发测试结果、压力测试结果、负载测试结果、稳定性测试结果)
  • 风险及建议(如果没有,则写无、如果有,则说明情况即可 )

某某某项目性能测试报告

word 可编辑修改-可在资源里寻找下载C站资源链接

修改记录

版本号发布日期编制人审核人/批准人修改的章节号
1.0YYYY-MM-DD张三
1.1YYYY-MM-DD李四
  • 文章目录

1 性能测试概述

某某某项目性能测试报告

摘 要: 本文档为某某某项目性能测试报告,主要内容包括概述、测试环境、测试方法、测试工具等。主要的读者有性能测试脚本开发人员、性能测试执行人员、性能评估人员、开发人员、项目经理、用户代表等。

缩略语清单:

缩略语全称说明

1 性能测试概述

1.1 背景

这部分写入一些项目的信息即可。

1.2 测试目标

一、本次测试的目标如下表:

测试需求表

image.png
由以上性能需求可知,系统对成功率要求非常高,均为100%,并要求每个进程的处理能力达到20000/分钟。(即在资源保证的前提下,执行一个20000的任务系统需要在1分钟之内完成)

目标1:要求程序A可以处理20000/分钟的业务量;

目标2:要求DB查询程序可以处理20000次/分钟的业务量;

目标3:调度程序的稳定性至关重要;

目标4:***********************************************************

目标5:***********************************************************

​ …

目标n:***********************************************************

2 测试环境
2.1 硬件环境
2.1.1 测试环境拓扑结构图

image.png

2.1.2 测试环境软/硬件配置

据目前已知的测试环境,主要如下:

image.png

测试环境资源配置表

image.png
2.2 软件环境参数配置说明
测试环境部署过程中一些关键参数的配置。例如数据库配置、线程数、使用的第三方工具是否有限制等,都需要在这部分说明。

3 测试环境差异性分析

这部分阐述测试环境与生产环境的差异和区别,并说明可能产生的影响。

4 测试方法

4.1 测试流程

性能测试计划中的测试方法部分。

4.2 测试工具及性能监控工具

性能测试计划中的测试工具和数据采集部分,这部分是对计划中细化。计划中悬而未决的都将在这部分确定和详细描述。

在测试过程中监控以下数据:

资源采集监控表

image.png

测试过程中开发的程序或脚本如下:

开发脚本列表

image.png

5 测试脚本开发

这里主要描述测试过程中使用的测试脚本的开发方法和原则,例如是否进行了参数化、关联以及其他一些业务操作。

6 测试用例执行结果

6.1 A程序
6.1.1 并发用户及稳定性测试

image.png
测试过程记录与分析:

  1. C模式,一个进程配置16个线程的结果:

A. 处理速度为:22419/分,处理速度达到需求。

B. 处理总量为400W,数据包大小为32K。

C. 服务器资源变化情况:CPU和内存变化没有出现异常

资源使用情况如下:

image.png

image.png

image.png

image.png
2. C模式,一个进程32个线程

A. 处理速度为:44388/分,处理速度达到需求。

B. 处理总量为3360200,数据大小为32K。

C. 服务器资源变化情况:CPU和内存变化没有出现异常

资源使用情况如下:

image.png

image.png

image.png

6.2 B程序
6.2.1 并发用户及稳定性测试

image.png
测试过程记录与分析:

C模式,一个进程32个线程
A. 结果描述。。。。。

C模式,10个进程32个线程
A. 结果描述。。。。。

6.3 DB查询服务
6.3.1 场景描述1:一次发送20个查询
该场景是对DB查询的模拟。每次发送20个请求给后台数据库。当TPS(每秒事物通过数)达到19.7时,可以满足每分钟20000的查询请求。

当压力达到TPS=19.7时(每个业务20个查询),结果如下:

整个业务DB查询的平均响应时间0.011s,其中90%的响应时间小于0.013s.

平均响应时间:

image.png

TPS数值:

image.png

数据库服务器资源使用情况:

CPU占用率大约1%(看13:48以前的数据)

image.png

数据库上的IO情况如下:
在这里插入图片描述

网络情况如下,对于100M网络该流量很小

image.png

6.3.2 场景描述2:一次发送1个查询

略!!!

7 性能测试过程中发现的问题
1) 在测试A程序时,发现某些时间的处理量为0,而且某些时间的处理量很少,使得处理速度为7858/分钟,经开发确认代码存在问题并修改代码后,处理速度达到了21830/分钟;

2) 在测试100个B程序并发处理时,发现程序出现了异常,经开发确认代码存在问题后修改了接口程序,异常情况已经不存在;

3) 。。。。。。。。。

8 性能测试结果分析和建议
A****程序结果分析:

1) 在C模式下,同样是单进程32线程,程序处理数据中存在图片和不存在图片结果差距很大。不存在图片的处理速度为15280/分,存在图片的处理速度为2581/分钟。有图片情况下,单独测试转换的速度为4223/分钟。经测试存储的写速度为100MB/s。测试过程中图片最大不超过8K。由次可以计算出存储并非瓶颈。转换缓慢的原因应该在程序本身。需对程序进行进一步的优化;

2) 在R模式下,不生成图片的情况下,1进程32线程和1进程256线程在运行过程中均达到90%左右。处理速度分别为80350/分钟和81603/分钟。由此可见,虽然R模式修改了代码,但至少证明,在被测系统内部,20000/分是可以达到的。同时也可以分析出,在程序充分运行的情况下,256线程并不比32线程更有优势,反而会由于线程过多导致CPU进行更多的上下文切换而占用CPU时间片。

3) …

4)…

综上所述,对于A程序,目前可以确认的结果是:不带图片处理速度至少可以达到20000/分。对于带图片的处理,无法达到20000/分。

DB****查询结果分析:

该项测试结果远远超过需求20000次/秒且响应时间迅速。
综上所述,整理的测试结果如下:

image.png

注:以上结果是在被测系统所运行的软硬件配置下得出的测试结果,无法通过一种环境下的测试结果准确的得出另一环境下的测试结果。

相关内容

热门资讯

【实验报告】实验一 图像的... 实验目的熟悉Matlab图像运算的基础——矩阵运算;熟悉图像矩阵的显示方法࿰...
MATLAB | 全网最详细网... 一篇超超超长,超超超全面网络图绘制教程,本篇基本能讲清楚所有绘制要点&#...
大模型落地比趋势更重要,NLP... 全球很多人都开始相信,以ChatGPT为代表的大模型,将带来一场NLP领...
Linux学习之端口、网络协议... 端口:设备与外界通讯交流的出口 网络协议:   网络协议是指计算机通信网...
kuernetes 资源对象分... 文章目录1. pod 状态1.1 容器启动错误类型1.2 ImagePullBackOff 错误1....
STM32实战项目-数码管 程序实现功能: 1、上电后,数码管间隔50ms计数; 2、...
TM1638和TM1639差异... TM1638和TM1639差异说明 ✨本文不涉及具体的单片机代码驱动内容,值针对芯...
Qt+MySql开发笔记:Qt... 若该文为原创文章,转载请注明原文出处 本文章博客地址:https://h...
Java内存模型中的happe... 第29讲 | Java内存模型中的happen-before是什么? Java 语言...
《扬帆优配》算力概念股大爆发,... 3月22日,9股封单金额超亿元,工业富联、鸿博股份、鹏鼎控股分别为3.0...
CF1763D Valid B... CF1763D Valid Bitonic Permutations 题目大意 拱形排列࿰...
SQL语法 DDL、DML、D... 文章目录1 SQL通用语法2 SQL分类3 DDL 数据定义语言3.1 数据库操作3.2 表操作3....
文心一言 VS ChatGPT... 3月16号,百度正式发布了『文心一言』,这是国内公司第一次发布类Chat...
CentOS8提高篇5:磁盘分...        首先需要在虚拟机中模拟添加一块新的硬盘设备,然后进行分区、格式化、挂载等...
Linux防火墙——SNAT、... 目录 NAT 一、SNAT策略及作用 1、概述 SNAT应用环境 SNAT原理 SNAT转换前提条...
部署+使用集群的算力跑CPU密... 我先在开头做一个总结,表达我最终要做的事情和最终环境是如何的,然后我会一...
Uploadifive 批量文... Uploadifive 批量文件上传_uploadifive 多个上传按钮_asing1elife的...
C++入门语法基础 文章目录:1. 什么是C++2. 命名空间2.1 域的概念2.2 命名...
2023年全国DAMA-CDG... DAMA认证为数据管理专业人士提供职业目标晋升规划,彰显了职业发展里程碑及发展阶梯定义...
php实现助记词转TRX,ET... TRX助记词转地址网上都是Java,js或其他语言开发的示例,一个简单的...
【分割数据集操作集锦】毕设记录 1. 按要求将CSV文件转成json文件 有时候一些网络模型的源码会有data.json这样的文件里...
Postman接口测试之断言 如果你看文字部分还是不太理解的话,可以看看这个视频,详细介绍postma...
前端学习第三阶段-第4章 jQ... 4-1 jQuery介绍及常用API导读 01-jQuery入门导读 02-JavaScri...
4、linux初级——Linu... 目录 一、用CRT连接开发板 1、安装CRT调试工具 2、连接开发板 3、开机后ctrl+c...
Urban Radiance ... Urban Radiance Fields:城市辐射场 摘要:这项工作的目标是根据扫描...
天干地支(Java) 题目描述 古代中国使用天干地支来记录当前的年份。 天干一共有十个,分别为:...
SpringBoot雪花ID长... Long类型精度丢失 最近项目中使用雪花ID作为主键,雪花ID是19位Long类型数...
对JSP文件的理解 JSP是java程序。(JSP本质还是一个Servlet) JSP是&#...
【03173】2021年4月高... 一、单向填空题1、大量应用软件开发工具,开始于A、20世纪70年代B、20世纪 80年...
LeetCode5.最长回文子... 目录题目链接题目分析解题思路暴力中心向两边拓展搜索 题目链接 链接 题目分析 简单来说࿰...