本文主要是介绍一文带您了解什么是系统的鲁棒性以及对它的测试方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
鲁棒性定义
鲁棒是Robust的音译,也就是健壮和强壮的意思。它也是在异常和危险情况下系统生存的能力。比如说当我们的系统出现断电、磁盘故障、网络故障或面对有意攻击的情况下依然能不死机、不崩溃,则证明系统的鲁棒性很强。简单的说鲁棒主要是指系统对处理干扰和不确定等因素的一种能力。
鲁棒性和稳定性的区别
通常说鲁棒性即稳健性,但是严格来说二者还是有一定差别的,因为稳定是基础,鲁棒是建立在稳定基础上的。没有稳定的话,一切无从谈起!我们也可以理解,稳定性是系统内部的性质,而鲁棒性是系统对外部扰动的响应能力。
鲁棒测试
鲁棒测试其实就是验证系统发生特殊情况(包括:磁盘故障、网络故障、恶意攻击)时,系统是否能够采取相对应的措施保障系统的健壮性并稳定持续运行。鲁棒测试我们可以理解为以前我们做过的破坏性测试,只不过破坏性测试往往针对的是某个应用,而鲁棒性测试是从系统角度出发进行。
破坏性测试
破坏性测试就是通过有效的测试手段,使软件应用程序出现奔溃或失败的情况,然后测试在这样的情况下,软件运行会产生什么结果,而这些结果又是否符合预期。这里需要注意的是,我们需要使用的测试手段必须是有效的:
第一,破坏性测试的手段和过程,并不是无的放矢,它们是被严格设计和执行的。破坏性测试不等于探索性测试。破坏性测试的结果也都应该是有预期的。
第二,破坏性测试,会产生切实的破坏作用,我们需要权衡破坏的量和度。因为破坏不仅仅会破坏软件,还可能会破坏硬件,一旦硬件部分被破坏,修复成本就会很大。
如何提升系统的鲁棒性
为了提升系统的鲁棒性,近几年技术圈衍生出一个很流行的理论:混沌工程。如果系统应用了混沌工程,那么其鲁棒性就会提升。
具体可以参考文章:
一文带您入门混沌工程并了解测试在混沌工程中的落地方案-CSDN博客
我的每一篇文章都希望帮助读者解决实际工作中遇到的问题!如果文章帮到了您,劳烦点赞、收藏、转发!您的鼓励是我不断更新文章最大的动力!
这篇关于一文带您了解什么是系统的鲁棒性以及对它的测试方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!