什么是稳定性测试?
它是一种非功能类型的测试,通常在性能测试中进行。主要重点是确定软件暴露于重负荷,压力和不同环境时的稳定性。它不会验证正常的行为,而是验证软件崩溃时的临界点,即系统崩溃点。它也被称为浸泡测试,并且是基于时间的测试,其中性能随时间被测量。负载被长时间应用于被测系统,这有助于确定软件的稳定性。
为什么要进行稳定性测试?
软件开发人员害怕在系统中进行大量的更改,因为他们不想破坏软件。这种恐惧在稳定性测试中得到很好的照顾。
以下是不对系统进行稳定性测试的主要缺点:
系统在大数据量下变慢。
系统突然崩溃。
当采取不同的温度或连接到不同的电压时,表现异常。
系统的性能下降,从而对业务产生不良影响。
为了避免上述所有问题,在为市场推广系统提供绿色标志之前,应进行稳定性测试,由于是基于时间的测试,关键是要知道执行整个测试过程所需的时间限制。我们不会想超过测试期限。
以下是对系统进行稳定性测试的优点:
提供系统可以实际处理的数据的限制。
给予系统性能的信心。
确定系统在负载下的稳定性和鲁棒性。
更好的终端用户体验。
如何进行稳定性测试?
稳定性测试可以使用工具(自动化)进行,也可以手动测试。让我用一个例子来说明一下。智能手机是稳定性测试的完美示范。当手机装载最新开发的软件时,首先测试的是开机,然后进行回归或烟雾测试。一旦通过了第一级测试,就会进行功能和非功能测试。功能包括执行所有功能相关的测试用例,非功能或性能测试,包括负载测试,压力测试,稳定性测试和可靠性测试。
现在为了测试性能,有以下几个方面来看:
1、内存60%填充数据,然后对系统进行性能测试。
2、80%的内存被填满,然后再次测试。
3、使用Load Runner这样的工具来负载系统,然后测试稳定性。
4、还可以运行自动化脚本来填充系统的内存并测试性能。
5、一些示例是:点击特定按钮100次,一次向系统发送1000个请求,按随机按钮,打开和关闭一些下载的应用程序等。
6、电池寿命和性能也可以进行测试,有时手机上加载的软件会意外地减少电池寿命。
7、在内部和外部对系统施加最大允许负载以确定断点。
稳定性测试需要一个适当的测试环境,需要高效的工具和结构化的方法。如果系统在测试时崩溃,则从崩溃中恢复所需的时间也决定了处理负方案的性能。