前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >再谈性能测试之需求调研

再谈性能测试之需求调研

作者头像
老_张
发布2019-12-02 19:09:13
5630
发布2019-12-02 19:09:13
举报

之前的文章聊聊性能测试开始前的准备工作,聊了一些关于性能测试开始前要做的准备工作。

这篇文章,来谈谈性能测试开始前的需求调研阶段,我们要做什么,关注那些Point。。。

一、基本信息

信息类型

说明

项目名称

项目归属的业务线,项目名称

项目类型

新建、迭代、重构。。。

项目背景

因为什么原因,需要进行性能测试

测试目的

进行性能测试的目的:容量规划、性能验证或者其他原因

测试范围

被测系统业务模块,属于什么业务,有什么特点

里程碑

设立此次性能测试的里程碑,即不同阶段的达成以什么为结束标志,比如:测试方案、环境准备、测试实施等

影响因素

要实施此次性能测试,有哪些潜在问题,影响因素

二、环境信息

信息类型

说明

系统架构图/网络拓扑图

通过系统架构图/网络拓扑图,可以快速直观的了解到系统的结构,数据流

部署方式/部署层级

集群、分布式、微服务/web、app、db层

性能测试环境

PAT、UAT、SIT不同环境对测试结果的影响不同

被测系统环境的软硬件配置

比如服务器是几核几G,有多少台;数据库是几核几G,有多少台

关键参数

线程池、最大连接数、消费者数量、内存分配等

网络

负载机和被测系统的网段、防火墙策略、带宽、CDN等

特殊因素

是否存在某些特殊因素,会影响测试结果

三、应用信息

信息类型

说明

业务模型

比如支付类业务、批量审核或提交、库存业务、查询业务等

业务场景

什么时间什么用户做什么操作

协议/接口

HTTP、Socket、Dubbo。。。

连接方式

长连接、短连接

通信策略

同步、异步

变更策略

参数的加解密、拼接、动态变化、依赖关系等

四、性能指标

指标类型

说明

user

包括注册用户数、在线用户数、并发用户数等

TPS

每秒事务数,包括服务端和数据库

RT

包括ART、%RT、MaxRT、MinRT

吞吐量

吞吐量在一定程度上可以用来衡量系统的容量

交易量

日/月/某个时间段内的交易量,可更好的衡量系统的容量和存在的压力

交易成功率

即事务成功率、请求成功率,根据具体需求设定阈值,一般要求99.99%甚至更细的粒度

资源使用率

包括CPU%、Memory%、I/O速率等

可扩展性

随着并发数的上升,系统的性能表现是否会正比例线性增长

五、测试数据

数据信息

说明

限制条件

用户操作权限、数据引用次数、数据过期设定(次数、绝对时间)

数据量

实际生产环境的数据量为多少,在性能测试环境如何等量代换

数据类型

基础数据、测试数据、特殊数据

数据特点

是否可以复用、是否具有唯一性、自增、加密、拼接、转义等

准备方式

copy真实环境数据、预埋铺底数据、脚本脱敏生成数据

隔离方案

如何避免测试数据的污染?分库分表?环境隔离?标记区分?

六、配置参数

参数类型

说明

测试环境

性能测试环境是否和生产环境保持一致的配置?如不能,如何解决或等量代换?

操作系统

操作系统的版本、超时设置、内存空间等

软硬件版本

尽可能保证和生产环境一致的版本

中间件

比如JVM的内存分配/GC算法、Tomcat连接数/超时时间、MQ的消费者数量等

七、测试模型

模型~交易量

说明

交易占比

测试交易笔数占总业务量的比例(可忽略占比很少的交易数据)

选取思路

①、选取交易量最高的时间段;②、每种交易进行单独的数据统计

异常选择

①、如果各时段的交易比例类似,则可按照生产的配比进行转化;②、如比例差距大,则独立统计

交易配比

单交易统计后,基于各交易的RT,结合并发用户数,使总交易数达到交易占比数

ThinkTime

根据各交易类型和具体场景,选择ThinkTime是统一设定/随机设定/按实际场景设定

以上即为性能测试需求调研阶段,我们要做的事情和关注的Point,仅供参考。。。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-11-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 老张的求知思考世界 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
内容分发网络 CDN
内容分发网络(Content Delivery Network,CDN)通过将站点内容发布至遍布全球的海量加速节点,使其用户可就近获取所需内容,避免因网络拥堵、跨运营商、跨地域、跨境等因素带来的网络不稳定、访问延迟高等问题,有效提升下载速度、降低响应时间,提供流畅的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档