故障注入测试(Fault Injection Test)方法

2023-11-04

这周新一篇技术文章来袭,今天要分享的技术文章是《故障注入测试(Fault Injection Test)方法》


过去只被归类为机械装置的汽车,现在变成了包括许多电子控制装置在内的尖端产品。最近上市的汽车上基本上都搭载了100个以上的控制器,由此也增加了过去没有发生过的与HW及SW有关的问题。2007年10月20日,在美国发生了一起因丰田凯美瑞(Camry)的突然加速而导致人员伤亡的事故。嵌入式软件专家迈克尔•巴教授分析该事故原因并发表了Report,该教授在Report中指出该汽车软件源代码存在缺陷,但整个系统中却没有应对该缺陷的设计,次缺陷最终对Throttle Valve控制产生了影响,导致汽车突然加速。最终该Report在法庭上被采纳为证据,当时丰田被处罚款12亿美元,召回费用24亿美元,赔偿消费者16亿美元。
这里的主要内容是,所有控制器都必须对缺陷进行Fail -Safe设计,故障注入测试(Fault Injection Test)则是验证这些Fail-Safe功能的方法。Fault具有HW和SW两种类型,并具有验证系统Fail Safe[1]功能的特点。故障注入测试(Fault Injection Test)是评价控制器系统可靠性的重要方法,在ISO 26262[2]的软件及硬件开发阶段的测试方法(Part5, 6)和系统开发阶段的测试方法(Part4)中均有所规定。

Fail Safe[1] : 系统发生故障而导致运转错误或性能下降时,为维持主要功能,防止Error(要求的动作和偏差)发展为Failure(功能运行失败)而进行的设计。ISO 26262[2]: ISO 26262或汽车功能安全国际标准是为有效防止因汽车搭载的E/E (Electric & Electronic) 系统错误而发生事故,由ISO制定的汽车功能安全国际标准。

测试方法按以下顺序进行:

1.根据Fault对象生成Fault根据Fault对象选定类型,并据此确定发生时间和发生次数,生成Fault。
在这里插入图片描述
图1 Fault生成方法

2. 监控系统发生Fault时的运行状态

按照制定的Fault方法,监控运行中的Target系统发生Fault时的动作状态。
在这里插入图片描述
图 2 防止生成Failure策略
在这里插入图片描述

3. 测试结果

通过2次运行状态监测,发生与Task schedule相关的Fault及CPU 寄存器、软件组件、变量污染和代码变异、Bit Flip、内存不足等Fault时,系统中检测出Error后,如转换到Safe State则为正常;若处于Failure状态,则有可能导致错误操作及性能下降,故应重新设计Fail-Safe,修改至不再发生Failure

正如前面所说,如果车辆系统发生严重错误,人的生命和财产将遭受巨大损失。 为了预防这些缺陷,需通过故障注入测试充分测试系统的Fail-Safe功能,确保安全性。


青岛硕索福特科技有限公司的FIT故障注入测试工具将为您提供在进行测试时所需的所有功能,为您的软件安全保驾护航,关于FIT的更多信息请关注往期文章→故障注入测试自动化工具FIT

往期精彩回顾

MATLAB Simulink数据的小数点设计

何为次时代技术B2V(Brain-to-Vehicle)

软件优化方法介绍

MISRA–C 2012修改指南说明

上海汽检与青岛硕索达成战略合作,为智能网联汽车关键软件保驾护航

基于设计需求的单元测试和单元测试详细说明书

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

故障注入测试(Fault Injection Test)方法 的相关文章

  • RandomAccessFile的常见用法

    1 RandomAccessFile的简介 1 1为什么要用到RandomAccessFile 我们平常创建流对象关联文件 开始读文件或者写文件都是从头开始的 不能从中间开始 如果是开多线程下载一个文件我们之前学过的FileWriter或者
  • Validator 用法详解

    validation 用法详解 1 常用注解说明 这是javax validation包中的 主要包括上述的几个注解 注解 描述 AssertFalse 被注释的元素必须为 false AssertTrue 同 AssertFalse De
  • MAE入局多模态分析,CMU联合微软发布仅需文本监督的视觉语言新模型VLC

    原文链接 https www techbeat net article info id 3677 作者 seven 论文链接 https arxiv org abs 2205 09256 代码链接 https github com guil
  • 铝电解电容的寿命计算(纹波电流法)手把手教你

    本文教你通过纹波电流预测铝电解电容的寿命 计算方法来自Nichicon 所以以Nichicon的电解电容为例 不同厂家的计算公式可能稍有不同 首先选一款铝电解电容为例 这里选择常见的LGN系列3000h 105 420V 470uF的电容
  • 怎样优化Pentium系列处理器的代码 From:http://www.codingnow.com/2000/download/pentopt.htm#26_14

    How to optimize for the Pentium family of microprocessors Copyright 1996 2000 by Agner Fog Last modified 2000 07 03 Cont
  • 同一页面、不同页面监听localStorage变化

    当同源页面的某个页面修改了localStorage 其余的同源页面只要注册了storage事件 就会触发 所以 localStorage 的例子运行需要如下条件 同一浏览器打开了两个同源页面 其中一个网页修改了 localStorage 另
  • 用Selenium测试web应用

    问题1 当用户在网上商店购物时 一次完整的购买流程需要用户进行好几个步骤的操作 包括选择商品 填写订单信息 选择支付方式 确认订单等 涉及四到五个页面以及数十个类的协作 如何在开发过程中始终确保该流程能够正确无误 畅通无碍 问题2 客户提出
  • 故障注入测试(Fault Injection Test)方法

    这周新一篇技术文章来袭 今天要分享的技术文章是 故障注入测试 Fault Injection Test 方法 过去只被归类为机械装置的汽车 现在变成了包括许多电子控制装置在内的尖端产品 最近上市的汽车上基本上都搭载了100个以上的控制器 由
  • Java 对象toString()之后转化成json对象

    在平时的工作中经常遇到Java对象toString 之后打印出来 在发生线上问题时需要参数重新调用时 无法转化参数 如下图 TransOccupyRequestDTO newOrderId 390310807 transOccupyDeta
  • ASP.NET页面之间传值的五种常用方法

    1 使用QueryString变量 QueryString是一种非常简单的传值方式 他可以将传送的值显示在浏览器的地址栏中 如果是传递一个或多个安全性要求不高或是结构简单的数值时 可以使用这个方法 但是对于传递数组或对象的话 就不能用这个方
  • 网络爬虫是怎么运行的

    2 2 1知识概述 网络爬虫究竟是怎么运行的 单个页面是如何运行的 1 指定一个url 2 使用技术发送get请求 3 获得服务端的响应 4 将二进制的数据 转化成HTML文档 网络爬虫一般会爬取很多很多很多的页面 for 1 指定一个ur
  • vue图片上传组件

    vue图片上传组件 最近在做项目的时候顺便补充了一下公司项目的公共组件库 刚刚手头事情告一段落 就来做个笔记 首先来看看最终效果 1 不允许删除 2 允许用户删除 显示删除按钮 实现的效果就是上图显示内容 接下来说说组件布局那部分直接上代码
  • 系统化程序分析

    左志强 南京大学计算机系副研究员 研究领域包括程序分析 编译技术 系统软件等 本文以技术文章的方式回顾左老师在 SIG 程序分析 技术沙龙上的分享 回顾视频也已经上传 B 站 欢迎小伙伴们点开观看 SIG 程序分析技术沙龙回顾 面向千万行代
  • 解决Windows10提示管理员已阻止你运行此应用的问题

    近日发现Windows10更新后 想查看设备管理器 在此电脑上右键点击管理后 提示 用户账户控制 管理员已阻止你运行此应用 无法打开管理 后来又发现很多重要的地方都出现这个提示 于是在网上找如何解决这个问题的办法 大部分都是修改注册表或者打
  • 互联网公司MySQL数据库采用读已提交的隔离级别原因

    开始我们的内容 相信大家一定遇到过下面的一个面试场景 面试官 讲讲mysql有几个事务隔离级别 你 读未提交 读已提交 可重复读 串行化四个 默认是可重复读 面试官 为什么mysql选可重复读作为默认的隔离级别 你面露苦色 不知如何回答 面
  • 记一次悟空CRM ubuntu服务器环境搭建

    linux服务器创建用户并设置工作目录 为什么这么做 因为服务器root权限过大 如果误操作导致不可估计的后果 建议创建一个用户 在当前用户的home下运行项目 该用户在其他目录下没有权限 所以可防止误操作 并且很多第三方插件不允许直接用r
  • 抗击疫情,AI可以做些什么?

    目前 新冠疫情的发展 可以说无时无刻不在牵动着大家的心 在这样的历史背景下 作为人工智能 数据科学领域的从业者 我们不妨来探讨一下 AI在遏制类似的疾病传播中 可以起到什么样的作用 当然 单纯靠AI技术确实无法让病毒停止传播 在一定时期内
  • 基于Apache Storm Trident实时计算开发 下

    2 4 入门案例 pom xml Topology
  • JDK21新特性探秘

    欢迎关注公众号 通过文章导读关注 11来了 及时收到 AI 前沿项目工具及新技术 的推送 发送 资料 可领取 深入理解 Redis 系列文章结合电商场景讲解 Redis 使用场景 中间件系列笔记 和 编程高频电子书 文章导读地址 点击查看文
  • Redis生产环境最佳实践

    欢迎关注公众号 通过文章导读关注 11来了 及时收到 AI 前沿项目工具及新技术 的推送 发送 资料 可领取 深入理解 Redis 系列文章结合电商场景讲解 Redis 使用场景 中间件系列笔记 和 编程高频电子书 文章导读地址 点击查看文

随机推荐

  • docker commit 命令

    简介 在软件开发中经常需要保存软件状态 比如git 中每次提交的代码都会有版本号 可以根据提交的版本号进行恢复 docker中通过docker commit 命令提供了一个保存镜像状态的方式 使用 比如有一镜像 adaptor 1 通过do
  • cmd怎么另起一行_西语毕业论文怎么写?西语资料去哪儿找?

    西语毕业论文怎么写 西语资料去哪儿找 1 论文结构 西语 学位论文包括前置 主体 附录等三个部分 以下细节无固定先后之分 视具体学校要求而定 1前置 1 封面 由论文 中 西 文题目 姓名 学号 专业 班级 指 导老师姓名和职称 时间组成
  • 数据结构系列——栈 stack

    本期主题 数据结构之 栈 往期链接 数据结构系列 先进先出队列queue 目录 1 栈定义 2 使用动态数组实现栈 3 有趣的例子 1 栈定义 栈是什么 定义 一个后进先出的数据结构 LIFO last in first out 插入操作称
  • 美国地质调查局SRTM--30米DEM数据

    美国地质调查局 USGS SRTM DEM数据 0 简介 1 数据下载 1 1网址 https lpdaac usgs gov https lpdaac usgs gov 1 2搜索 SRTM 以列表展示 选择SRTMGL1 003 1 3
  • 转--Approximate Inference(近似推断,变分推断,KL散度,平均场, Mean Field )

    题目 PRML读书会第十章 Approximate Inference 近似推断 变分推断 KL散度 平均场 Mean Field 转自 http blog csdn net nietzsche2015 article details 43
  • 使用波束搜索的端到端神经网络系统中的上下文语音识别(论文翻译)

    摘要 最近的研究表明 端到端 E2E 语音识别体系结构 如Listen attent和Spell LAS 可以在LVCSR任务中获得最先进的质量结果 这种体系结构的一个优点是它不需要单独训练的发音模型 语言模型和声学模型 但是 这个属性也引
  • Redis 高可用之持久化

    目录 Redis 高可用 Redis 持久化 RDB 持久化 触发条件 执行流程 启动时加载 修改配置文件 AOF 持久化 配置 执行流程 命令追加 append 文件写入 write 和文件同步 sync 文件重写 rewrite 文件重
  • Unity实现一个可扩展的UGUI无限滑动列表控件

    12月20日新增 增加一个可收缩的滑动列表 适用于游戏中的任务系统 成就等 使用说明 创建时需要两个模板slot 一个是button 另一个则是btn下显示的cell 配置如下图添加ExpandableView脚本 新增的IsDefault
  • Python环境配置

    1 python下载 下载地址 https www python org downloads 找到3 10以上的包下载 2 Pycharm下载 Pycharm下载 选择社区版本的下载就够用 3 Pycharm配置Python环境 Proje
  • 华为鸿蒙4本周发布:官方海报大有玄机!告别“人工智障”!

    一年一度的华为开发者大会2023 HDC Together 将于8月4日至8月6日在东莞松山湖举办 相比去年 今年的华为开发者大会足足提前了三个月 而本次大会主角之一无疑是全新国产操作系统鸿蒙4 HarmonyOS 4 官方之前用了三个词来
  • git查看、修改远程仓库地址

    查看 远程仓库 git remote v 修改 git remote set url origin gitUrl 再查看 git remote v 输出已修改过得git仓库地址 即为完成
  • 分布式数据库资料

    Hadoop是很多组件的集合 主要包括但不限于MapReduce HDFS HBase ZooKeeper MapReduce模仿了Google MapReduce HDFS模仿了Google File System HBase模仿了Goo
  • python项目2to3方案预研

    目录 官方工具2to3 工具安装 参数解释 基本使用 工具缺陷 future 工具安装 参数解释 基本使用 工具缺陷 python modernize 工具安装 参数解释 基本使用 工具缺陷 pyupgrade 工具安装 参数解释 基本使用
  • Unity 3D期末大作业--背包系统

    Unity游戏背包系统的实现 一 项目概述 1 功能描述 该部分主要实现了游戏中玩家在个人背包和游戏角色之间切换装备 能够从背包中将装备装到游戏角色上也能够将游戏角色的装备卸下放入背包 卸下装备放入背包 将背包中装备赋给游戏角色 2 实现思
  • 图像阈值分割方法论文与代码【matlab】

    一 算法流程 图像是事物的视觉表现 也是人类接收信息 传递信息的一种重要途径 是人类生活与生产过程中最高效的信息获取与交流的方式之一 图像分割是一种帮助人类获取有效知识的重要方法 其主要是将目标图像处理成多个具有不同性质的区域并提取出对用户
  • base64编码相关-btoa和atob及中文乱码报错问题

    base64编码相关 btoa和atob及中文乱码报错问题 最近在做二进制编码相关的东西 关于Base64的编码解码问题 遇到了一些问题 btoa btoa函数全称就是Binary to ASCII 在js中用于Base64编码 let e
  • 图片处理二--使用OpenCV库实现图片膨胀腐蚀

    1 什么是形态学操作 形态学操作就是基于形状的一系列图像处理操作 通过将结构元素作用于输入图像来产生输出图像 最基本的形态学操作有二 腐蚀与膨胀 Erosion 与 Dilation 他们的运用广泛 消除噪声 分割独立的图像元素 以及连接
  • Maven的介绍及安装

    Maven 什么是Maven 在美国是一个口语化的词 代表专家 内行的意思 一个对Maven比较正式的定义是这么说的 Maven是一个项目管理工具 它包含了一个项目对象模型 POM Project Object Model 一组标准集合 一
  • 基于 Vue 和 SpringBoot 的医院门诊预约挂号系统源代码+数据库

    基于 Vue 和 SpringBoot 的医院门诊预约挂号系统 完整代码下载地址 基于 Vue 和 SpringBoot 的医院门诊预约挂号系统源代码 数据库 软件简介 本软件是 基于 Vue 的医院门诊预约挂号管理系统 主要包含数据中心
  • 故障注入测试(Fault Injection Test)方法

    这周新一篇技术文章来袭 今天要分享的技术文章是 故障注入测试 Fault Injection Test 方法 过去只被归类为机械装置的汽车 现在变成了包括许多电子控制装置在内的尖端产品 最近上市的汽车上基本上都搭载了100个以上的控制器 由