嘉峪检测网 2025-02-10 14:37
导读:软件性能测试的目的是评估当前系统性能指标,根据测试结果对性能瓶颈进行定位及优化,以预防规避性能风险。在进行系统的调优过程中,好的策略是按照由易到难的顺序对系统性能进行调优。
软件性能测试的目的是评估当前系统性能指标,根据测试结果对性能瓶颈进行定位及优化,以预防规避性能风险。在进行系统的调优过程中,好的策略是按照由易到难的顺序对系统性能进行调优。
一、软件性能的衡量指标
1、响应时间(Response time)
对于网站系统来说,响应时间就是从点击了一个页面计时开始,到这个页面完全在浏览器里展现计时结束的这一段时间间隔,响应时间越短越好。可以细分为服务器端响应时间、网络响应时间、客户端响应时间。在软件性能测试中一般是通过事务函数Transaction Response Time来统计响应时间。
2、吞吐量(Throughput)
吞吐量反映的是系统的处理能力,具体来说,就是指软件系统在每单位时间内能处理多少个事务/请求/单位数据等。吞吐量的大小由负载或行为方式来决定。在Performance Center中,吞吐量反映单位时间内系统处理的事务数目。一般以TPS(Transaction Per Second)即每秒事务数表示。
3、资源使用率(Resource utilization)
指系统在负载情况下软硬件上各种资源的占用情况。例如,CPU占用率、内存使用率、磁盘I/O等。
4、并发用户数(Concurrent users)
并发用户数用来度量多个用户同时访问同一个应用、同一个模块或者数据记录时是否存在死锁或者其他性能问题,反映了系统的并发处理能力。
5、点击数(Hits per second)
点击数是按照客户端向Web Server 发起了多少次 HTTP请求计算的。
二、软件性能测试常用检测项目
1.负载测试 (Load Testing)
负载测试是通过逐步增加系统负载,直到达到系统的工作极限,来评估软件在正常和峰值条件下的性能。这种测试可以帮助确定系统在不同工作负载下的行为,以及系统是否能够满足性能目标。
2.压力测试 (Stress Testing)
压力测试是将系统推向其极限,通常超过预期的工作负载,以确定系统的最大承载能力和故障点。它可以帮助识别系统崩溃的阈值和潜在的性能瓶颈。
3.并发性能测试 (Concurrency Testing)
并发性能测试专注于模拟多个用户同时访问系统的情况,以评估系统的并发处理能力。它有助于发现并发操作引起的性能下降和潜在的同步问题。
4.容量测试 (Volume Testing)
容量测试涉及加载大量数据到系统中,以验证系统在大数据量下的性能和稳定性。它通常用于数据库系统和存储密集型应用程序。
5.稳定性测试 (Endurance Testing)
稳定性测试,也称为疲劳强度测试,是通过长时间运行系统来评估其在持续负载下的性能和稳定性。它可以揭示随时间累积的性能问题,如内存泄漏。
6.基准测试 (Benchmark Testing)
基准测试是建立系统在理想状态下的性能指标,用于后续测试的比较。这有助于评估性能改进或性能退化。
7.配置测试 (Configuration Testing)
配置测试检查系统在不同硬件、软件和网络配置下的性能,以确保系统在各种环境中都能达到预期的性能水平。
8.恢复测试 (Recovery Testing)
恢复测试验证系统在遇到故障或异常情况后能否正确恢复,以及恢复过程对系统性能的影响。
9.扩展性测试 (Scalability Testing)
扩展性测试评估系统在增加资源(如硬件、软件或网络资源)时的性能变化,以确定系统是否能够随着负载的增长而高效扩展。
三、软件测试方法
1.等价类
等价类划分的办法是把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其它值,也就是说,如果某一类中的一个例子发现了错误,这一等价类中的其他例子也能发现同样的错误:反之,如果某一类中的一个例子没有发现错误,则这一类中的其他例子也不会查出错误(除非等价类中的某些例子属于另一等价类,因为几个等价类是可能相交的)。等价类又分为有效等价类和无效等价类。有效等价类代表对程序有效的输入,而无效等价类则是其他任何可能的输入(即不正确的输入值)。
2.边界值
着重对输入域的边界进行测算*其中Min及Max分别表示被测项依据用户手册中规定的上下限值,单位表示取值的最小步进,中间值一般取范围的中点值。
3.错误推断
错误推测法就是基于经验和直觉推测程序中所有可能存在的各种错误,有针对地设计测试用例的方法。
4.场景分析
①.一般场景分析:对典型的场景业务流进行分析,确定路径触发条件与场景关系,并付诸于测试用例;
②.风险场景分析:对典型业务可能遇到的诸如暴力、非法操作等风险场景进行分析,确定路径触发条件与场景关系,并付诸于测试用例。
5.因果图
等价类划分方法和边界值分析法都是着重考虑输入条件,并没有考虑到输入情况的各种组合,如果在测试时必须考虑输入条件的各种组合,需要利用因果图,基本步骤如下:
(1)分析程序规格说明的描述中,哪些是原因,哪些是结果。原因常常是输入条件或是输入条件的等价类,而结果是输出条件;
(2)分析程序规格说明的描述中语义的内容,并将其表示成连接各个原因与各个结果的“因果图”;
(3)标明约束条件。由于语法或环境的限制,并将其表示成连接各个原因与各个结果的“因果图”。由于语法或环境的限制,有些原因和结果的组合情况是不可能出现的。为表明这些特定的情况,在因果图上使用若干个标准的符号标明约束条件;
(4)反因果法转换成判定表;
(5)为判定表中每一列表示的情况设计测试用例。
四、软件测试常用检测标准
GB/T 25000.51-2016《系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第51部分:就绪可用软件产品(RUSP)的质量要求和测试细则》;
GB/T 25000.10-2016《系统与软件工程系统与软件质量要求和评价(SQuaRE) 第10部分:系统与软件质量模型》;
GB/T 37729-2019 《信息技术智能移动终端应用软件(APP)技术要求》。
来源:Internet
关键词: 软件