目录
一、封面
二、文档修改记录
| 版本号 |
版本描述 |
责任人 |
日期 |
备注 |
| V1.0 |
性能测试报告V1.0 |
XX |
2020-01-01 |
V1.0版报告 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
三、目录
四、正文
第一章 概述
第1节 编写目的
本文档为 “XX项目” 软件项目的系统性能测试报告,目的在于对系统开发和实施后的结果进行测试以及测试结果分析,验证系统是否符合非功能指标,服务器系统性能是否稳定等。
本文档根据 “XX项目” 的性能测试结果编写,主要包括性能测试,用于总结本项目软件的性能测试情况,说明软件的性能质量情况以及还存在的问题。
分析系统性能存在的缺陷,为修复和预防缺陷,完善系统提供分析参考依据。
第2节 项目概况
2.1 项目产品
(1)公众端:
小程序:
公众号:
APP:
前台:
桌面应用程序:
(2)管理端:
后台:
APP:
2.2 参与单位
本项目由XX建设,XX公司承建,主要为XX相关的市属单位、区属单位、社会办XX机构相关业务提供XX信息化管理。(此部分内容根据招标书或者立项文档的政策背景进行抄写)
具体参与单位如下:
- 项目建设单位:
- 项目承建单位:
- 项目监理单位:
- 省属单位:
- 市属单位:
- 区属单位:
- 社区服务中心
- 全省居民
2.3 政策背景
(此部分内容根据招标书或者立项文档的政策背景进行抄写)
第3节 适用范围
预期参考人员包括用户、测试人员、开发人员、项目管理者、研发部门经理、其他质量管理人员和需要阅读本报告的高层经理。
第二章 性能测试范围
第1节 测试对象
验证平台被测的场景在测试机配置环境下,是否可以达到非功能性测试指标的要求和系统所能支持的最高并发用户数。(此部分内容根据招标书或者立项文档的政策背景进行抄写)
第2节 测试术语
- 事务平均响应时间 (Average Transaciton Response Time)
“事务平均响应时间”显示的是测试场景运行期间的每一秒内事务执行所用的平均时间,通过它可以分析测试场景运行期间应用系统的性能走向。
例:随着测试时间的变化,系统处理事务的速度开始逐渐变慢,这说明应用系统随着投产时间的变化,整体性能将会有下降的趋势。
- 每秒通过事务数/TPS (Transactions per Second)
“每秒通过事务数/TPS”显示在场景运行的每一秒钟,每个事务通过、失败以及停止的数量,使考查系统性能的一个重要参数。通过它可以确定系统在任何给定时刻的时间事务负载。分析TPS主要是看曲线的性能走向,将它与平均事务响应时间进行对比,可以分析事务数目对执行时间的影响。
- 并发用户数 (Vuser)
“并发用户数量”,在同一时刻与服务器进行交互的在线用户数量。这些用户的最大特征是和服务器发生了交互,这种交互既可以是单向传送数据的,也可以是双向传送数据的。
- 吞吐量(Throughput)
“吞吐量”是指在单位时间内CPU 从存储设备读取-处理存储信息的量,即性能测试过程中网络上传输的数据量的总和。
第3节 测试目标
验证平台被测的场景在测试机配置环境下,是否可以达到非功能性测试指标的要求和系统所能支持的最高并发用户数。(此部分内容根据招标书或者立项文档的政策背景进行抄写)
系统性能需求如下:
① 公众端:在1000并发用户下,简单查询平均响应时间小于等于3秒,复杂查询平均响应时间小于等于5秒,页面展示平均响应时间小于等于3秒。
② 管理端:在500并发用户下,简单查询平均响应时间小于等于3秒,复杂查询平均响应时间小于等于5秒,页面展示平均响应时间小于等于3秒;
③ 系统具有高度的灵活性,能适应日常业务变更的需求,实现“低代码”方式的系统管理和维护。
④ 对于超出了时间的操作,系统有良好提示信息,利用活动条或明确提示处理尚需多少时间。
⑤ 系统具有良好的数据安全保障机制,具有较强的容错能力和灾难恢复能力,服务器组采用集群模式。
⑥ 用户查询时,系统能够保证用户查询数据的准确性、一致性和完整性。
⑦ 注:简单页面查询是指涉及单个条件的严格匹配查询;复杂页面查询是指涉及多个条件,或者使用模糊匹配的查询及统计。
第4节 测试基本信息
- 测试对象:XX项目
- 被测产品:XX小程序……
- 测试时间:2020.01.01~2020.12.01
- 测试人员:XX
- 测试工具:Jmeter
第三章 压测机配置信息
| 压测机服务器 | |
| 服务器台数 |
N 台 |
| 内网IP |
|
| 凭证 |
|
| 系统版本 |
CentOS Linux release 7.5.1804 (Core)[示例] |
| CPU |
8 核 |
| 内存 |
32780472 KB |
| 硬盘 |
115 G |
第四章 服务器配置信息
| 测试服务器 | |
| 服务器台数 |
1 台 |
| 业务私网地址 |
|
| 业务弹性地址 |
|
| 管理私网地址 |
|
| 管理弹性地址 |
|
| 所属区域 |
XX外网区/内网区 |
| 端口 |
小程序、前台:8080 ;后台:8081 |
| CPU |
8 核 |
| 内存 |
16 G |
| 磁盘类型 |
FS |
| 系统盘 |
100 G |
| 数据盘 |
500 G |
| 镜像名称 |
CentOS7.3_Standard_08 |
| 生产服务器 | |
| 服务器台数 |
3 台 |
| 业务私网地址 |
|
| 业务弹性地址 |
|
| 管理私网地址 |
|
| 管理弹性地址 |
|
| 所属区域 |
XX外网区/内网区 |
| 端口 |
小程序、前台:8080 ;后台:8081 |
| CPU |
16 核 |
| 内存 |
32 G |
| 磁盘类型 |
FS |
| 系统盘 |
100 G |
| 数据盘 |
300 G |
| 镜像名称 |
CentOS7.3_Standard_08 |
第五章 测试设计
第1节 测试工具
测试工具:Jmeter
- 测试工具版本:Jmeter 5.1.1
- Jdk版本:
第2节 脚本准备
2.1 本地准备 Jmeter 脚本
(截图jmeter测试脚本,然后备注详情查看附件XXX)
2.2 Jmeter 脚本上传路径
(写明压测机上的jmeter存放脚本目录路径等)
第3节 场景设计
由于生产环境暂无相应的数据,因此V1.0接口性能压测时,根据测试与生产的配置差异,在测试环境,造XX数据,进行 500 并发压测 5 分钟的性能测试。(示例,按需补充)
3.1 单接口并发场景-已登录
| 单接口并发场景-已登录 | |
| 用例数 |
55 |
| 接口总数 |
55 |
| 并发数 |
500 |
| 压测时长 |
5 min |
| 压测机脚本路径 |
|
| Http信息头管理器 |
|
3.2 单接口并发场景-未登录
| 单接口并发场景-未登录 | |
| 用例数 |
55 |
| 接口总数 |
55 |
| 并发数 |
500 |
| 压测时长 |
5 min |
| 压测机脚本路径 |
|
| Http信息头管理器 |
|
3.3 多接口并发场景-已登录
| 多接口并发场景1-已登录 | |
| 场景名称 |
平均 50 并发访问各个模块的全部接口 |
| 模块数 |
10 |
| 用例数 |
1 |
| 接口总数 |
55 |
| 并发数 |
500 |
| 压测时长 |
5 min |
| 压测机脚本路径 |
|
| Http信息头管理器 |
|
| 多接口并发场景2-已登录 | |
| 场景名称 |
平均100并发访问XX模块;平均20并发访问XX模块 |
| 模块数 |
9 |
| 用例数 |
1 |
| 接口总数 |
52 |
| 并发数 |
500 |
| 压测时长 |
5 min |
| 压测机脚本路径 |
|
| Http信息头管理器 |
|
3.4 多接口并发场景-未登录
| 多接口并发场景1-未登录 | |
| 场景名称 |
平均 50 并发访问各个模块的全部接口 |
| 模块数 |
10 |
| 用例数 |
1 |
| 接口总数 |
55 |
| 并发数 |
500 |
| 压测时长 |
5 min |
| 压测机脚本路径 |
|
| Http信息头管理器 |
|
| 多接口并发场景2-未登录 | |
| 场景名称 |
平均100并发访问XX模块;平均20并发访问XX模块 |
| 模块数 |
5 |
| 用例数 |
1 |
| 接口总数 |
29 |
| 并发数 |
500 |
| 压测时长 |
5 min |
| 压测机脚本路径 |
|
| Http信息头管理器 |
|
第六/七章 单/多接口场景测试执行结果
第1节 首页(模块名称,可写菜单名)
- 1 定位城市(×)(接口名称,对错符号表示通过与否)
| 标题 |
内容 |
| 用例名称 |
WX_【1.1】定位城市 |
| 接口路径 |
|
| 测试结果 |
|
| 线程接口 |
单个 _ 外部:腾讯位置服务IP定位API |
| 请求方法 |
get |
| 请求域名 |
|
| 请求协议 |
https |
| 信息头 |
Content-Type:application/json;charset=UTF-8;multipart/form-data XX:使用开发者工具真机模式,实名登陆获取此值,或者登陆前台,登陆获取 Application 的 XX 值 |
| 请求示例 |
{ "location":"23.1091,113.3308" } |
| 返回示例 |
"data": { "regionCode": "440600", "regionName": "佛山市" }, "errmsg": "SUCCESS" } |
| 响应断言 |
SUCCESS |
| 负载配置 |
并发数: 500 持续时间: 5 min 启动时长: 1 sec |
| 登录状态1 |
已登录 |
| 报告路径1 |
生成的测试报告比如HTML报告存放路径 |
| 汇总报告1 |
截图性能测试结果 |
| 指标趋势1 |
|
| 引擎资源1 |
|
| 错误信息1 |
|
| 聚合报告1 |
|
| 登录状态2 |
未登录 |
| 报告路径2 |
|
| 汇总报告2 |
|
| 指标趋势2 |
|
| 引擎资源2 |
|
| 错误信息2 |
|
| 聚合报告2 |
|
第八章 测试分析及结论
第1节 性能测试执行情况
第2节 风险评估
- XX接口:外部接口,无法控制性能。
- XX接口:内部接口,目前存在XX问题,XX指标未达标,持续优化中。
- XX接口:内部接口,由于XX限制的原因,未测试该接口性能。
第3节 测试结论
| 一期测试通过:目前一期性能大部分接口已符合指标,少部分接口持续优化中,已达一期性能优化目标,其他待二期进行优化。
|
五、模板下载路径
本测试报告下载路径:XX项目XX系统-性能测试报告模板 V1.0.docx