0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

符合ISO 26262的零部件级的软件测试解决方案

北汇信息POLELINK 2024-11-07 08:05 次阅读

作者 |浩瀚


小编 | 不吃猪头肉

05f156b0-9c9c-11ef-8084-92fbcf53809c.png

引言
在功能安全的开发、测试过程中概念阶段的活动一般都是由主机厂负责,而从系统开发到单元实现则是由供应商负责,对于供应商所做的一系列测试通常称为零部件级测试。根据ISO 26262功能安全标准的划分,功能安全在零部件阶段的测试包括:软件单元测试、软件集成测试、硬件集成测试、嵌入式软件测试、软硬件集成测试。本次主要探讨软件在零部件级的软件测试

0602db24-9c9c-11ef-8084-92fbcf53809c.png

目前功能安全零部件测试的困难

1.来自OEM的认可压力:随着主机厂对功能安全的重视和投入,主机厂越来越专业,审核要求也越来越严格,不仅要求过ISO 26262产品认证和流程认证,并且亲自下场对各输入物及详细内容进行审查。

2.技术储备不足:大多数零部件供应商没有专门的功能安全团队,缺少功能安全开发能力和测试能力。

3.资源不足:大部分零部件供应商缺少完整的测试工具链,各阶段测试人员配备不齐。目前国内的功能安全标准正处于由国家推荐性标准逐渐向强制性标准过渡的时期,加之在新能源汽车出海的大趋势下,功能安全标准也正在加速与国际接轨。未来功能安全标准将成为汽车供应链厂商的准入门槛之一。那么执行满足功能安全标准要求的测试已是刻不容缓且必须解决的问题,下面将依据功能安全标准和公司在软件测试方面的积累提供满足功能安全测试的解决方案。

0624f4c0-9c9c-11ef-8084-92fbcf53809c.png

软件单元、集成测试
2.1软件单元、集成的静态测试
静态测试是指在不运行软件的情况下,检查软件是否符合业内通用的编码规范/建模规范,像MISRA、MAB等,尽早发现软件的数据流/控制流问题,以及选用一些代码度量的约束,来提高软件质量。

基于MBD的静态分析
模型的静态分析主要是通过选择合适的建模标准和模型度量指标来进行验证,它的分析原理就是利用模型的一些属性和结构信息来推断代码的行为和可能存在的问题。对于模型生成的代码也需要做代码静态分析。

建模规范选择

在进行代码静态分析时,通常依据使用的语言和遵循的规则来选用编码规范。在进行模型静态分析时,依据使用的建模工具和要求来选择建模规则。1)所有基于MBD的开发都需要选择MAB建模规范;2)使用了Simulink 和 Stateflow 的模型工具需要选择MISRA SLSF;3)使用了TargetLink的模型工具需要选择MISRA TL;4)如果需要符合ISO 26262对于模型的标准要求,需要选择定制的功能安全规范。工具选择:对于模型的静态测试通常选用MES的MXAM工具MXAM是一款高度自动化的静态分析工具,可支持多种模型类型的检查,并且提供了符合ISO 26262标准的检查规范。手写代码的静态分析
代码的静态分析主要从编码规范的检查、程序流和数据流的分析、代码度量分析等三个维度展开。它的分析原理是对编写的代码进行逐行检查,寻找潜在的错误、漏洞和不符合规范的代码结构。

编码规范选择

在进行代码静态分析时,通常依据使用的语言和遵循的规则来选用编码规范。1)C代码:通常选用最新的MISRA编码标准MISRA C 2023;2)C++代码:a.基于C++98/03开发选用MISRA C++ 2008b.基于C++11及C++14标准选用AUTOSARC.基于C++17的标准选用MISRA C++ 20233)考虑信息安全时需要遵循CERT和CWE规范。工具选择:对于代码的静态测试通常选用Helix QAC,它支持多种编码标准,以及拥有业界领先的编码规范覆盖度,拥有丰富的命令行,更容易实现自动化,方便与持续集成系统进行融合。

2.2软件单元、集成的动态测试
动态测试通过实际执行代码来验证软件的行为和性能是否符合预期,动态测试可以发现静态测试中未被检测到的缺陷,确保软件安全需求及安全机制执行正确,无非预期的输出,并为软件接口的一致性和完整性提供证据。软件单元的动态测试测试范围:软件单元详细设计规范、软件单元接口文档。测试方法

基于需求的测试:使用不同输入来激发软件单元代码中的各种执行路径,验证输出符合预期,从而验证软件单元设计规范和分配的软件安全要求满足设计要求。

接口测试:考虑软件单元输入信号的无效/有效等价类和边界值,模拟输入检测输出的正确性,从而验证软件单元与接口文档的一致性、输出的正确性。

故障注入测试:故障注入测试一般要修改被测的软件单元(比如改变变量的值,引入代码突变或破坏CPU寄存器的值),主要用来验证软件单元的“故障检测及处理”功能的正确性,以及软件的鲁棒性。

软件集成的动态测试测试范围:软件架构设计文档、细化的软硬件接口规范。测试方法

基于需求的测试:验证多个单元或组件集成后的软件功能,正向、反向的功能验证。用来验证分配给软件架构的软件要求,确保软件架构能够满足系统级别的需求。

接口测试:考虑集成的组件、模块输入信号的有效/无效等价类和边界值,模拟输入检测输出的正确性,以检查单元和单元或组件和组件之间数据的一致性和完整性。

故障注入测试:注入任意的接口故障以测试安全机制(例如通过损坏软件接口),以测试与安全机制相关的软硬件接口的正确性。

资源使用测试的目的是确认在最坏的情况下,资源CPU、ROMRAM等的使用情况。只有在目标硬件上执行软件测试或目标处理器仿真器支持资源占用测试时,才能正确评估软件资源占用情况,一般可以在PiL和HiL测试阶段进行验证。背靠背测试针对于基于MBD的开发,要求对模型生成的代码和模型进行等效性验证。软件动态测试环境模型动态测试环境MIL:TPT + MATLAB/Simulink模型的动态测试主要是对模型的功能和接口进行测试,在TPT中选择平台和被测模型,工具可以自动获取接口信息并生成测试框架。测试框架中包含test driver和被测模型,test driver在测试执行期间与被测系统(SUT)进行交互,通过测试框架将测试用例定义的输入信号激励给到被测系统(SUT),再回采被测模型的输出结果并对其进行评估。

0634681a-9c9c-11ef-8084-92fbcf53809c.png

代码动态测试环境SiL:PC端+交叉编译链将模型生成的代码或手写代码编译成能在目标机上运行的代码,在PC端进行验证。

a.模型生成的代码:TPT/FUSION + MATLAB/Simulink

用于对模型生成的代码进行背靠背测试,使用TPT的FUSION DLL调用Simulink生成的代码,对模型和模型生成的代码进行相同的输入,对比测试输出结果。


0652cbe8-9c9c-11ef-8084-92fbcf53809c.png


b.手写代码:VectorCAST + 交叉编译链

VectorCAST支持300+种交叉编译链,它可以调用交叉编译工具将源码编译成目标机上的可执行代码,可以自动解析源代码生成测试套件,测试人员能够根据测试套件使用工具提供的测试用例生成方法或手动创建测试用例,然后测试套件和测试用例会被传输到模拟器或者目标板执行测试,最终将执行的结果返回到上位机界面以供查看。


067ac328-9c9c-11ef-8084-92fbcf53809c.png

069bc7b2-9c9c-11ef-8084-92fbcf53809c.png嵌入式软件测试
嵌入式软件测试主要是验证在目标环境执行时满足软件安全需求(SSR),以及不包含与功能安全相关的非预期功能和特性。测试范围:软件安全需求(SSR)。嵌入式软件测试环境a.目标板+调试器 + TPT:TPT用来集成调试器,作为上位机可以进行测试用例设计及测试执行;调试器可直接访问内存,读取或修改寄存器、变量数值,以达到对软件内部输入输出参数的修改及监控,另外调试器还可以读取MCU中资源占用情况及各个函数的运行时间。

06aa71a4-9c9c-11ef-8084-92fbcf53809c.png

在嵌入式软件测试阶段,使用“目标板+调试器+TPT”的测试方案可以验证:

①对接收到的外部故障反馈、输入信息进行处理;

②与外部模块的数据通讯校验;

③可以验证芯片的内置安全机制,比例处理器、内存、看门狗、程序流的监控等;

④资源使用测试


06bf1406-9c9c-11ef-8084-92fbcf53809c.png软硬件集成测试

软硬件集成测试旨在证明所集成控制器的软件和硬件正确的交互。测试范围:技术安全需求(TSR)、软硬件接口规范(HSI)。软硬件集成测试环境

a.控制器 + CANoe + VT System

在软硬件集成测试阶段,“控制器 + CANoe + VT System”可以被用来测试技术安全需求(TSR)的相关要求,包括:技术安全需求的验证、安全机制的验证、内部接口验证和外部接口验证等。

另外,该测试方案还可以用来补充嵌入式软件阶段的测试,使用“目标板+调试器 + TPT”的测试方案一般不能完全覆盖软件安全需求的测试,比如一些涉及到电压采集、外部通讯的收发和外部模块对自身故障的检测处理等,可以使用HiL的方案辅助验证。

b.控制器 + TPT + CANoe + VT System + 调试器

该测试方案主要是在普通的HiL环境下集成了调试器,可以用来测试软硬件接口(HSI)。软硬件接口的测试主要是依据接口的描述和功能进行验证,已确认硬件可以被软件正确的控制和使用。

06ce296e-9c9c-11ef-8084-92fbcf53809c.png


06df183c-9c9c-11ef-8084-92fbcf53809c.png

总结
ISO 26262标准对零部件阶段的测试从模型、代码到最后的ECU都提出了要求,每个阶段的测试重点各不相同,主要目的就是为了更快更好的查出软件问题,保证质量。北汇信息除了能够提供上述的测试解决方案,还可以提供对应的测试服务。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 软件测试
    +关注

    关注

    2

    文章

    237

    浏览量

    18983
  • 零部件
    +关注

    关注

    0

    文章

    413

    浏览量

    15404
  • ISO26262
    +关注

    关注

    3

    文章

    36

    浏览量

    14550
收藏 人收藏

    评论

    相关推荐
    热点推荐

    汽车零部件可靠性测试项目

    汽车作为复杂的机械系统,其零部件的可靠性直接决定整车的性能、安全性和使用寿命。为确保汽车零部件在各种工况下都能稳定运行,行业内建立了一系列严格的可靠性测试标准和流程。
    的头像 发表于 05-06 14:30 728次阅读
    汽车<b class='flag-5'>零部件</b>可靠性<b class='flag-5'>测试</b>项目

    汽车零部件需要做哪些试验?

    在汽车产业蓬勃发展、技术日新月异的当下,汽车已成为人们日常生活中不可或缺的交通工具。从城市街道的穿梭到长途跋涉的跨越,汽车的安全性、可靠性与舒适性备受关注。而这一切的基础,皆源于每一个精密汽车零部件
    的头像 发表于 04-28 10:26 322次阅读
    汽车<b class='flag-5'>零部件</b>需要做哪些试验?

    汽车零部件厂如何用MES制造解决方案减少30%废品率?

    MES(制造执行系统)制造解决方案。本文将探讨MES如何助力汽车零部件厂减少30%的废品率。一、实时数据监控与分析MES系统通过实时采集生产线上的数据,包括设备状态
    的头像 发表于 04-03 10:23 170次阅读
    汽车<b class='flag-5'>零部件</b>厂如何用MES制造<b class='flag-5'>解决方案</b>减少30%废品率?

    射频RFID读写器应用案例:汽车零部件无人搬运的自动化改造

    晨控提供的解决方案在每一个物料台的表面粘贴超高频标签,标签内包含零部件的规格、序列号等详细信息。当物料台进入生产线或存储区域时,RFID读写器可以自动读取标签上的信息,实现对零部件的信息内容识别。
    的头像 发表于 04-02 15:47 168次阅读

    智能零部件管理助力中电思仪的标准化管理

    零件级别的重用率。 为了统筹管理大量的零部件数据,有效整合各系统资源,中电思仪引进SPM系统,将其应用到电子测试仪器的设计及制造过程中,为企业三维设计软件和PDM系统各终端提供所
    发表于 02-14 14:03

    汽车零部件EMC测试模版

    关于汽车零部件EMC测试的标准文本,主要涉及低压器件。
    发表于 02-10 13:55 1次下载

    AIM有限公司有效控制零部件的野蛮增长并优化企业流程

    和自制件,AIM有限公司自 2009 年以来一直使用CADENAS软件公司的三维战略性零部件数据资源管理系统PARTsolutions。该软件解决方案是由在产品开发和产品数据管理方面领
    发表于 02-08 10:46

    汽车零部件企业设备互联互通解决方案的设计实施

    一、企业背景与需求 该企业是一家专注于汽车零部件生产的传统制造企业,拥有多条自动化生产线,主要生产汽车发动机零部件。近年来,随着市场需求的不断变化和消费者个性化需求的增加,企业面临着生产效率低、质量
    的头像 发表于 01-20 17:53 319次阅读

    双张检测汽应用分享 汽车零部件冲压双料检测解决方案

    项目背景 客户是一家在汽车零部件制造领域的企业,企业提成了降本增效的需求。为了提升生产效率并降低运营成本,客户决定对现有的零部件生产线进行升级改造。客户希望能够找到高性能且具有竞争力价格的国产品牌
    的头像 发表于 11-22 11:15 393次阅读
    双张检测汽应用分享 汽车<b class='flag-5'>零部件</b>冲压双料检测<b class='flag-5'>解决方案</b>

    三品PLM系统在汽车零部件行业的解决方案及应用

    生命周期管理)正是为此而生的强大工具。本文将深入探讨三品PLM系统在汽车零部件行业的解决方案及应用,帮助企业更好地利用PLM系统提升竞争力。
    的头像 发表于 11-18 11:46 673次阅读
    三品PLM系统在汽车<b class='flag-5'>零部件</b>行业的<b class='flag-5'>解决方案</b>及应用

    虹科方案 | 精准零部件测试!多路汽车开关按键功能检测系统

    在汽车制造业中,零部件的安全性、功能性和可靠性是确保车辆整体性能的关键。虹科针对车辆零部件的LIN/CAN总线仿真测试,提出了基于虹科Baby-LIN系列产品的多路汽车开关按键功能检测方案
    的头像 发表于 11-01 11:04 515次阅读
    虹科<b class='flag-5'>方案</b> | 精准<b class='flag-5'>零部件</b><b class='flag-5'>测试</b>!多路汽车开关按键功能检测系统

    什么是汽车ISO 26262功能安全标准?

    随着各行业引进一系列产品设计和测试的标准化流程,安全保障也日益规范化。ISO26262是针对汽车零部件中的关键电气和电子(E/E)系统的功能安全标准。ISO26262基于IEC6150
    的头像 发表于 07-23 08:28 7256次阅读
    什么是汽车<b class='flag-5'>ISO</b> <b class='flag-5'>26262</b>功能安全标准?

    飞机零部件环境可靠性试验的具体实施过程_环境模拟试验设备

    为了确保飞机的飞行安全,飞机零部件需要经过严格的环境可靠性试验。这些试验通过模拟飞机在各种极端环境下的工作条件,全面评估零部件的性能和可靠性。下面将详细介绍飞机零部件环境可靠性试验的具体实施过程
    的头像 发表于 06-21 17:37 903次阅读
    飞机<b class='flag-5'>零部件</b>环境可靠性试验的具体实施过程_环境模拟试验设备

    三坐标CMM三次元用于测量电子零部件

    在电子制造领域,对零部件的精确测量至关重要,它直接关系到产品的性能、质量和可靠性。而蔡司三坐标CMM三次元测量机,凭借其卓越的性能和广泛的应用领域,成为了电子零部件测量的卓越之选。蔡司三坐标CMM
    的头像 发表于 06-04 14:19 678次阅读
    三坐标CMM三次元用于测量电子<b class='flag-5'>零部件</b>