一文带您了解什么是系统的鲁棒性以及对它的测试方法

2023-12-13 17:52

本文主要是介绍一文带您了解什么是系统的鲁棒性以及对它的测试方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

鲁棒性定义

鲁棒是Robust的音译,也就是健壮和强壮的意思。它也是在异常和危险情况下系统生存的能力。比如说当我们的系统出现断电、磁盘故障、网络故障或面对有意攻击的情况下依然能不死机、不崩溃,则证明系统的鲁棒性很强。简单的说鲁棒主要是指系统对处理干扰和不确定等因素的一种能力

鲁棒性和稳定性的区别

通常说鲁棒性即稳健性,但是严格来说二者还是有一定差别的,因为稳定是基础,鲁棒是建立在稳定基础上的。没有稳定的话,一切无从谈起!我们也可以理解,稳定性是系统内部的性质,而鲁棒性是系统对外部扰动的响应能力

鲁棒测试

鲁棒测试其实就是验证系统发生特殊情况(包括:磁盘故障、网络故障、恶意攻击)时,系统是否能够采取相对应的措施保障系统的健壮性并稳定持续运行。鲁棒测试我们可以理解为以前我们做过的破坏性测试,只不过破坏性测试往往针对的是某个应用,而鲁棒性测试是从系统角度出发进行。

破坏性测试

破坏性测试就是通过有效的测试手段,使软件应用程序出现奔溃或失败的情况,然后测试在这样的情况下,软件运行会产生什么结果,而这些结果又是否符合预期。这里需要注意的是,我们需要使用的测试手段必须是有效的:

第一,破坏性测试的手段和过程,并不是无的放矢,它们是被严格设计和执行的。破坏性测试不等于探索性测试。破坏性测试的结果也都应该是有预期的。

第二,破坏性测试,会产生切实的破坏作用,我们需要权衡破坏的量和度。因为破坏不仅仅会破坏软件,还可能会破坏硬件,一旦硬件部分被破坏,修复成本就会很大。

如何提升系统的鲁棒性

为了提升系统的鲁棒性,近几年技术圈衍生出一个很流行的理论:混沌工程。如果系统应用了混沌工程,那么其鲁棒性就会提升。

具体可以参考文章:

一文带您入门混沌工程并了解测试在混沌工程中的落地方案-CSDN博客

我的每一篇文章都希望帮助读者解决实际工作中遇到的问题!如果文章帮到了您,劳烦点赞、收藏、转发!您的鼓励是我不断更新文章最大的动力!

这篇关于一文带您了解什么是系统的鲁棒性以及对它的测试方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/489369

相关文章

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

一文解密Python进行监控进程的黑科技

《一文解密Python进行监控进程的黑科技》在计算机系统管理和应用性能优化中,监控进程的CPU、内存和IO使用率是非常重要的任务,下面我们就来讲讲如何Python写一个简单使用的监控进程的工具吧... 目录准备工作监控CPU使用率监控内存使用率监控IO使用率小工具代码整合在计算机系统管理和应用性能优化中,监

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

一文详解SpringBoot中控制器的动态注册与卸载

《一文详解SpringBoot中控制器的动态注册与卸载》在项目开发中,通过动态注册和卸载控制器功能,可以根据业务场景和项目需要实现功能的动态增加、删除,提高系统的灵活性和可扩展性,下面我们就来看看Sp... 目录项目结构1. 创建 Spring Boot 启动类2. 创建一个测试控制器3. 创建动态控制器注

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam