这里写目录标题
一、为什么程序会出现性能问题、性能问题是怎么出现的?
任何程序的运行都需要资源(CPU、内存、磁盘、网络)
资源不是无限的
- 程序运行就会受限
- 每一个请求后端处理都占用资源
- 一个图片查看请求
二、功能测试和性能测试的区别是什么?
三、核心性能指标
TPS
QPS
HPS
RT(响应时间)
错误率
并发量
1、用户角度核心
a、响应时间:
从客户端发出请求到得到响应的整个时间,一般包括网络响应时间+server的响应时间。
注意我们并不关心客户端点击和客户端处理页面显示的时间。
b、并发量
相对并发和绝对并发的区别
线程数=绝对并发
发起请求之后,会继续请求
一个请求500ms完成,又发起一个请求500ms完成
此时:1个线程——》2个并发/s——》相对并发
一个线程在单位时间内(秒)发起的总共请求数量 = 相对并发
2、成本角度
资源占用率
3、运维角度
吞吐量:一进一出;输入——》处理——》输出
QPS:
每秒查询率
针对查询类请求处理,每秒能处理多少查询,数据库中不涉及修改数据
TPS
每秒处理的事务数
涉及数据变更的操作——》从数据库微观——》事务,多个操作
反应程序的处理能力综合体现:TPS越大越好
面试题、并发量和吞吐量得区别?
a、吞吐量
是指系统在单位时间内能够处理的请求数量或事务数量。它常用于评估系统的性能和容量。
在软件测试领域,吞吐量通常用来衡量系统在一定负载下能够处理的请求或事务的数量。对于一个高并发的系统,吞吐量的大小直接关系到系统的性能和稳定性
例如,一个电商网站每秒钟能够处理100个订单,那么它的吞吐量就是100 TPS(Transactions Per Second)。另一种计算方式是通过每秒钟处理的请求数量来衡量。
在进行性能测试时,我们通常会通过模拟真实用户的行为或者生成大量的请求来测试系统的吞吐量。通过监测系统在不同负载下的吞吐量,可以评估系统的性能瓶颈、优化效果以及系统是否能够承受预期的工作量。
b、并发量
是指系统能够同时处理的请求数量或事务数量。它描述了系统在同一时间段内可以同时执行的任务数。
在软件测试和系统设计中,并发量是一个重要的指标,用来衡量系统的并发处理能力和性能。并发量通常与系统的资源、线程数量以及处理能力相关。
用户并发量:表示系统能够同时处理的用户请求或并发连接数量。例如,一个Web服务器能够同时处理1000个并发用户请求,那么它的并发量就是1000。
并发量对于系统设计和性能优化非常重要。如果系统的并发量超过了系统所支持的范围,可能会导致系统性能下降、响应时间延长甚至系统崩溃。因此,在进行系统设计和性能测试时,需要充分考虑并发量,并保证系统能够合理处理并发请求,确保系统的稳定性和性能
四、性能测试核心三步骤
1、性能需求
极端:你给我一个性能报告
全面测试
看起来没有要求,其实全部要求了
a、学会梳理需求
性能测试不能脱离实际需求,所以不论是测试哪一种场景,有哪方面得性能需求,我们在执行测试的时候,都会涉及具体的业务场景
产品经理:比竞品要快一点
b、业务场景:
c、性能指标
d、性能测试执行思路(用例)
采用思路2