测试指标
【虚拟用户数】:线程=用户
【并发数】:指在某一时间,一定数量的虚拟用户同时对系统的某个功能进行交互,一般通过集合点实现
【事务】:一个接口可以是事务,多个接口也可以是事务,一个流程可以是事务,事务代表一个完整的功能,由测试人员决定的
【场景】:性能测试用例
【响应时间 Response Time】:指用户从客户端发送一个请求开始,到客户端接受到从服务器端返回的结果,整个过程所耗费的时间(网络传输时间+服务器处理时间)
基准测试:一个用户请求接口,一般设定为200~500ms
压力测试:n个用户并发请求接口,一般为2秒
【TPS】:每秒事务数,即控制器每秒处理的事务请求的数量,是系统重要的性能指标。
计算公式:总的事务数 / 总的运行时间
例1:某个事务1分钟内处理1000个事务,那么TPS=1000/60=16.7
例2:按去年的经营数据,2023年最高的一天有10万笔交易,预测2024年TPS需要多少才合格?
总的事务数:10万,时间:24*60*60=86400秒
理论上:TPS=100000/86400=1.2
- 没有更详细的数据:根据二八定律(80%的事务在20%的时间完成)计算:
TPS=100000*0.8 / 86400*0.2=80000/17280=4.3 - 如果有更详细的数据:5万笔交易是在晚上8-9点进行的:
TPS=50000/60*60=13.9 - 假设2024年业务要增长30%:
TPS=50000+50000*0.3/3600=18
【QPS】:每秒查询数,即控制服务器每秒处理的指定请求的数量,一般用来描述数据库。
如果一个事务里只有一个接口,那么TPS=RPS
如果这个一个接口是查询接口,那么TPS=QPS=RPS
【吞吐量】:指单位时间内处理的客户端请求数量,直接体现软件系统的性能承载能力。单位:Byte/S
【资源利用率】:一般的要求——CPU不高于75%-85%,内存不高于80%、磁盘IO不高于90%、网络不高于80%
测试流程
- 需求分析以及需求确定(指标值、场景、环境、人员)
- 性能测试计划和方案制定
基准测试:即单用户测试。建立基准线,当系统的软硬件环境发生变化之后再进行一次基准测试以确定变化对性能的影响
负载测试:通过逐步增加系统负载,确定在满足系统的性能指标(如响应时间等)情况下,找出系统所能承受的最大负载量的测试
压力测试:在强负载下的测试,查看系统在峰值情况下是否存在功能隐患,系统是否具有良好的容错能力和可恢复能力
稳定性测试:在服务器稳定运行(有用户正常的业务负载下)的情况下进行长时间测试(1天-一周等),并最终保证服务器能满足线上业务需求(最后进行测试)
并发测试:是指在极短的时间内,发送多个请求,来验证服务器对并发的处理能力 - 性能测试准备阶段
人力、硬件、软件、环境。。。。 - 测试执行阶段
脚本生成和增强、场景设计、指标监控、性能瓶颈定位和性能调优 - 测试报告和总结