目录
性能测试定义
测试人员使用测试工具,模拟系统在不同场景下,对应的系统性能是否能够达到预期。
性能测试与功能测试有啥区别?
功能测试是依靠人工来进行测试,测试软件的功能是否能够实现,不管在啥场景下,只要能够正常运行功能即可
性能测试是依靠工具来进行测试,测试软件在极端场景下或者在压力环境下是否还能正常工作
影响一个软件性能因素有哪些?
硬件:服务器CPU利用率、内存、磁盘操作频率、CPU核心数
软件:算法、编程语言
用户:用户数量、用户使用时长、用户访问频率
性能测试指标
性能测试指标主要包括并发用户数、响应时间、事务响应时间、每秒事务通过数、点击率和吞吐率。
并发用户数
并发在性能测试里面包含着:大量的用户数、同一时间时刻。
从业务层面上来说,并发用户数指同一时间访问服务器的用户数量
从后端服务器上来说,并发用户数指同一时间请求服务器的请求数量
响应时间
系统的说,用户从发出请求到接收到系统反馈这一全过程需要的时间
响应时间分为前端展示时间和系统响应时间两部分。前端展示时间指的是客户端收到服务器返回的数据后渲染前端页面,所耗费的时间 。(N1+A1+N2+A2+N3+A3+N4)系统的响应时间分为 web 服务器,应用服务器,数据库服务器等各种服务器之间通信和处理请求的时间。(A1+N2+A2+N3+A3)
事务响应时间
每秒事务通过数
点击率
吞吐量
吞吐量是指系统处理用户请求数量。
吞吐率是指在单位时间内,系统能够处理用户的请求数量,吞吐率越大则说明系统性能越好。
资源利用率
指系统资源的利用率。通过监测系统的资源使用率,可以评估系统在不同负载下对资源资源的占用情况。
CPU利用率
指系统的内存利用率。通过监测系统的内存使用率,可以评估系统在不同负载下对内存资源的占用情况。
错误率
指系统处理过程中出现的错误数量与总请求数量的比例。用于评估系统的稳定性和可靠性。
性能测试分类
性能测试分为基准性能测试、负载性能测试、压力性能测试和可靠性测试
基准性能测试
基准性能测试定义:让系统在正常情况下运行,观察软件性能指标
应用场景:软件刚上线时,需要对软件系统的性能进行摸底
负载性能测试
负载性能测试定义:验证软件在一定压力的情况下,观察性能指标是否出现拐点
压力性能测试
系统在处于饱和情况处于临界值状态下,对系统进行增加压力测试,观察系统性能指标(压力性能测试往往会把系统搞崩溃)
可靠性测试
可靠性测试是为了验证系统在一个持续的时间段内运行,在这个时间段内,观察系统各项性能指标是否正常
可靠性测试时间:持续1day -> 持续运行一周 -> 持续运行一个月 -> 持续运行一个季度 -> 持续运行一年
基准性能测试、负载性能测试与压力性能测试的示例图如下: