一、什么是性能测试以及性能测试的价值和目的
性能测试就是通过性能压测工具,通过特定方式,对系统施加一定的压力:正常、异常负载以及峰值来对系统实施压力,得到各项性能指标。保证系统的性能需求
价值和目的:
1. 评估系统的能力
2. 识别系统的弱点:瓶颈,弱点
3. 检查系统的隐藏问题
4. 检验系统的稳定性和可靠性
二、性能测试指标理解透彻以及测算
【虚拟用户数】:线程=用户
【并发数】:指在某一时间,一定数量的虚拟用户同时对系统的某个功能进行交互,一般通过集合点实现。
【事务】:一个接口可以是事务,多个接口也可以是事务,一个流程可以是事务,事务代表一个完整的功能,由测试人员决定的
【场景】:性能测试的用例
【响应时间】:Response Time
平均响应时间:
中位数:
90%:
95%:
99%:
基准测试:1个用户请求接口。200-500ms
压力测试:n个用户并发请求接口。2s
[TPS]TPS是系统的重要性能指标,用于衡量系统在一定时间内能够处理的事务数(交易数)。
计算公式:总的事务数/总的运行时间
比如:某个系统1分钟处理1000个事务,那么TPS=1000/60=16.7
比如:按去年的经营数据,2022年最高的一天有10万笔交易,预测2023年TPS需要多少合格?
总事务数=10万,时间24*60*60=86400秒
理论上TPS=100000/86400=1.2
(1)没有更详细的数据:根据二八定律(80%的事务在20%的时间完成)计算:
TPS = 100000*0.8/86400*0.2=80000/17280=4.6
(2)如果有更详细的数据:5万笔交易是晚上8-9点完成的。
TPS=50000/3600=13.9
业务的增长:30%
TPS=50000+50000*0.3/3600=18
[QPS]每一秒的查询率。
TPS、QPS、RPS(每秒的请求率)、HPS(每秒的点击率)
[吞吐量] 衡量网络成功传输的数据量,单位byte/s
[资源利用率]服务器:CPU、内存、磁盘、网络