背景介绍

随着汽车行业的迅速发展,汽车的复杂程度不断增加,越来越多的汽车电子控制系统具有与安全相关的功能,因此对ECU的安全要求也越来越高。复杂的软件功能,将会带来大量的软件风险问题,如何保证软件的安全,保证软件做正确的事情,已经成为汽车行业迫切需要解决的问题。

ISO 26262(道路车辆功能安全标准)是以IEC 61508(电气/电子/可编程电子安全系统功能安全标准)为基础,为满足道路车辆上电子电气系统的特定需求而编写,发布于2011年。ISO 26262能够在管理、开发(软、硬件)、生产、运行、服务、报废等阶段,保证整个生命周期内的安全性。与此同时,ISO 26262也在不断地完善和发展。2018年12月,第二版的ISO 26262也已经对外发布,覆盖范围也已经从3.5吨以下的乘用车扩展到所有的车型,包括商用车和摩托车。

GB/T 34590(道路车辆功能安全国家标准)修改采用ISO 26262,适用于道路车辆上由电子、电气和软件组件组成的安全相关系统在安全生命周期内的所有活动,发布于2017年。目前,功能安全在中国已经得到普遍认可,并逐步进入大规模使用阶段。

本文旨在说明,如何使用TPT完成符合ISO 26262要求的基于模型设计(MBD,Model based Design)的测试。TPT可以支持主流的MBD开发工具Simulink、Targetlink、ASCET。

基于需求的测试

按照ISO 26262推荐的测试方法,基于需求的测试是ASIL-A到ASIL-D高度推荐的测试方法。并且在软件测试阶段,需要实现测试和需求的双向追溯。
TPT-Requirement能够通过简单的操作完成需求、测试用例、测试评估之间的追溯,并能够在报告中体现。
目前TPT-Requirement支持IBM DOORS、Polarion、EXCEL等需求工具。

图1 需求-测试用例链接关系

MiL测试

针对ISO 26262和MBD开发的流程,首先需要完成模型测试。TPT-MATLAB Platform、TPT-ASCET Platform可以通过加载被测模型,自动读取模型的接口和参数,自动生成模型测试环境。

测试用例生成

测试环境搭建完成之后,需要设计测试用例来对模型功能进行测试。ISO 26262推荐了下图2所示的测试用例生成方法。用户需要根据不同的ASIL等级,来明确需要采用的测试用例生成方法。

针对1b基于等价类测试用例生成和1c基于边界值测试用例生成,TPT提供自动化工具箱,可以根据用户设定,自动生成测试用例。

针对1d基于猜错的测试用例,需要结合企业的测试积累和工程师的测试经验,具体情况具体分析,编写测试用例。

图2 ISO26262测试用例生成方法

针对1a基于需求的测试用例生成方法是目前最常用也是最重要的测试用例生成方法。TPT提供了基于图形化的测试用例搭建方法,用以帮助用户实现复杂的测试场景,同时,也方便测试工程师之间互相评审测试用例。

图3 图形化测试用例

便捷的测试评估

在测试用例搭建完成之后,需要添加评估条件来对测试结果进行评估,TPT提供了GUI、python-script、m-script等手段来降低测试评估的难度,实现复杂测试要求下的评估,实现测试过程的自动化。

图4 测试评估界面

可自定义测试报告

TPT生成的报告中,包括了整个测试过程的所有信息,例如测试结果、覆盖度报告、需求报告等。同时,TPT提供可自定义的测试报告,用户可以将测试数据、图片、测试用例说明、测试数据曲线显示在测试报告之中,满足项目的实际需求。

图5 测试报告概览

覆盖度

需求覆盖度

在功能测试中,往往需要根据功能需求来设计测试用例。TPT提供了Requirement Coverage Report,涵盖需求的覆盖情况以及每条需求的测试结果。在测试过程中,需要保证需求覆盖度为100%。

图6 测试需求报告

结构覆盖度

在ISO 26262中,提到了结构覆盖度的概念,并通过覆盖度来评定测试完成度和未测试的功能。针对模型测试,在ISO 26262中列举了如下三种结构覆盖度标准,不同的ASIL等级对覆盖度有不同的要求,ASIL-C、ASIL-D高度推荐MC/DC覆盖度标准。

  • Statement coverage
  • Branch coverage
  • MC/DC coverage

在TPT-MATLAB Platform可以统计测试用例所能达到的覆盖度,借助生成的报告,可以直观地发现未覆盖的路径,从而可以补充测试用例,来提升覆盖度指标。

针对模型的结构覆盖度,TPT提供TASMO工具箱,能够分析模型结构,自动生成结构化的测试用例,来测试模型是否存在不可达分支,帮助开发人员在早期发现问题。

Back-to-Back Testing

因为软件在不同的运行环境当中,会存在因为运行环境或者数据类型定义而引起的软件运行错误。因此,ISO 26262罗列了如下的几种不同测试阶段:
MiL ➔ SiL ➔ PiL ➔ HiL
ISO 26262高度推荐在ASIL-C、ASIL-D,采用Back-to-Back测试。

  • 针对SiL测试,TPT可以调用Simulink来根据客户配置生成代码,然后将其封装成dll文件,进行测试。运行时,首先运行MiL阶段的测试用例,记录测试结果,再运行SiL阶段的测试用例,将SiL的执行结果与MiL阶段进行对比。

图7 背靠背测试评估对比

  • 针对PiL测试,TPT目前支持Lauterbach和PLS UDE两款调试器,可以对软件的执行时间和资源占用情况进行测试。
  • 针对HiL测试,TPT支持目前主流的HiL平台,比如dSPACE、ETAS、Speedgoat、NI Veristand、Concurrent等平台。

Tool Qualification

ISO 26262-8指定了支持过程的需求,包括配置管理、版本管理、报告等,TPT可以通过对于SVN的支持和自身的管理功能,来帮助实现如上要求。

这一部分也规定了需要对项目使用工具进行置信度等级评定。这里需要强调的是,用户需要结合自己的具体项目来对工具的置信度等级进行评定,而非软件提供商。

TPT提供了Qualification Kit,里面包括TPT典型使用,验证方法,置信度等级的确认方法等。目前,TPT通过了TÜV 的认证,可以满足ASIL A到ASIL-D等级对软件的测试要求。

正如上文所述,TPT的使用者需要在具体的项目中来确定工具的置信度等级,鉴于TPT强大的功能,典型的使用方法仅仅是TPT部分功能。如果用户的使用超出了常规使用,PikeTec也会提供额外的支持来帮助用户确定实际项目的置信度等级,协助出具Qualification报告。

图8 项目认证流程

目前,已经有全球领先的汽车整车厂和零部件供应商,利用TPT Qualification Kit完成了项目的ISO 26262认证工作。

图9 TPT Qualification Kit客户

关于PikeTec

PikeTec公司是全球知名的基于模型的嵌入式系统测试工具TPT的软件供应商,总部位于德国柏林,其创始人均在戴姆勒公司拥有十多年的软件测试经验。TPT产品曾被评为2005年戴姆勒最佳创新软件,并在戴姆勒、大众、奥迪、保时捷、通用等汽车整车厂及多家零部件企业(博世、大陆、海拉等)中得到广泛应用,如戴姆勒的多个车型的混合动力汽车的动力总成、电池管理控制器的测试,博世的汽油机和柴油机控制系统测试等。

北汇信息作为PikeTec的中国合作伙伴,将帮助中国客户提升嵌入式控制系统的开发效率。

参考文献
[1] [ISO 26262] ISO 26262:2011-11: Road vehicles - Functional safety. International Standard, Part 1-9, 15.11.2011
[2] [TPT Qualification] TPT - Qualification in accordance with ISO 26262, Analysis and Qualification measures. Version 1.6, PikeTec, March 2017

如何完成符合ISO 26262要求的基于模型设计(MBD)的测试的更多相关文章

  1. 功能更新 | medini analyze — 符合ISO 26262的功能安全平台工具

            汽车电子电气系统的功能安全随着智能驾驶.新能源等新兴技术的发展而愈发受到重视.在国际功能安全标准ISO 26262的落地过程中遇到了很多的棘手问题:如何正确而有效地实施HARA以得到合 ...

  2. 汽车芯片如何高效符合ISO 26262功能安全标准

      汽车芯片和集成电路(IC)是高级驾驶员辅助系统(advanced driver assistance systems-ADAS)和联网自动驾驶汽车(connected autonomous veh ...

  3. 保证软件开发过程遵循ISO 26262功能安全标准的十个主要进阶步骤

    保证软件开发过程遵循ISO 26262功能安全标准的十个主要进阶步骤 为保障汽车软件质量,使软件开发符合ISO 26262功能安全标准,需要我们对开发流程做出改进,并与2018年的更新同步. 本视频课 ...

  4. 基于soapUI构建WebService测试框架

    基于soapUI构建WebService测试框架 http://www.docin.com/p-775523285.html

  5. 强大的API测试工具Hitchhiker v0.9 基于UI的断言测试,回顾2017

    v0.9是Hitchhiker在2017农历年的最后一个版本,而起点正是刚过完2016农历年,农历2018即将到来,一年轮回,今天写点东西稍微回顾下hitchhiker的2017. 先还是说v0.9, ...

  6. ELM:ELM基于近红外光谱的汽油测试集辛烷值含量预测结果对比—Jason niu

    %ELM:ELM基于近红外光谱的汽油测试集辛烷值含量预测结果对比—Jason niu load spectra_data.mat temp = randperm(size(NIR,1)); P_tra ...

  7. 转:基于Jmeter的MQTT测试插件

    基于Jmeter的MQTT测试插件-上 1. Jmeter插件简介 Apache JMeter是Apache组织开发的基于Java的压力测试工具.下载 用于对软件做压力测试,它最初被设计用于Web应用 ...

  8. 《软件测试自动化之道》读书笔记 之 基于反射的UI测试

    <软件测试自动化之道>读书笔记 之 基于反射的UI测试 2014-09-24 测试自动化程序的任务待测程序测试程序  启动待测程序  设置窗体的属性  获取窗体的属性  设置控件的属性  ...

  9. 《软件测试自动化之道》读书笔记 之 基于Windows的UI测试

    <软件测试自动化之道>读书笔记 之 基于Windows的UI测试 2014-09-25 测试自动化程序的任务待测程序测试程序  启动待测程序  获得待测程序主窗体的句柄  获得有名字控件的 ...

随机推荐

  1. Study Blazor .NET(一)简介

    翻译自:Study Blazor .NET,转载请注明. 介绍 Blazor是一个全新的 Web UI 框架,它使用c# .Razor 和 HTML以及 WebAssembly W3C标准.它提供了用 ...

  2. 从零开始学Kotlin第五课

    函数式编程入门: package EL fun main(args: Array<String>) { var names= listOf<String>("tom& ...

  3. Jenkins快速上手安装

    目录 环境准备 - JDK 安装 1. APT 安装 2. WAR包方式运行 3.Docker 方式运行 Jenkins 是一个独立的开源自动化服务器,可以用来自动化与构建.测试.交付或部署软件相关的 ...

  4. java Scanner类与String类

    Scanner类的使用: ​ 导入Scanner包,new Scanner对象,记得调用System.in参数,调用对应next方法实现键盘录入. import java.util.Arrays; i ...

  5. [省选联考 2021 A/B 卷] 宝石

    大概是一眼看出来是这个给定序列在树上序列上按顺序跑最大匹配. 然后考虑维护向上和向下的链的值. 大概的做法是用倍增维护,考虑\(f_{u,i}\)是\(c_u\)在序列里的位置向后匹配\(2^i\)位 ...

  6. Run For Beer CF575G

    Run for beer CF 575G 如果直接bfs分层贪心可以做,但是很毒瘤,具体可以参考Gavinzheng的提交 考虑魔改dijkstra 首先,每次拿权值最小的来松弛肯定没有问题,只是怎么 ...

  7. 【机器学习与R语言】11- Kmeans聚类

    目录 1.理解Kmeans聚类 1)基本概念 2)kmeans运作的基本原理 2.Kmeans聚类应用示例 1)收集数据 2)探索和准备数据 3)训练模型 4)评估性能 5)提高模型性能 1.理解Km ...

  8. Redis总结笔记

    Redis总结笔记 应用场景 缓存--热数据 计算器 队列 位操作 分布式锁与单线程机制 最新列表 排行榜   Maxmemory-policy算法 volatile-lru:使用LRU算法移除key ...

  9. 毕业设计之zabbix+微信企业号报警

    需要自己申请一个微信企业号 创建应用 AgentId 1000003 Secret SOI8b20G96yUVM29K02-bP5N5o6dovwSF2RrDaXHJNg 企业ID(自己再企业信息里面 ...

  10. 毕业设计之zabbix---自带模板监控mysql内容

    自带模板是不能直接建立连接就可以用的 必须经历一下几步: 建立用户权限: [root@mysql.quan.bbs lib]$mysql -u root -p Enter password: Welc ...