如何高效的进行Simulink模型测试?模型动态测试工具TPT来助力:Simulink/Targetink 模型 | 接口分析 | 手动测试用例设计 | 自动生成测试用例:TASMO

本文主要是介绍如何高效的进行Simulink模型测试?模型动态测试工具TPT来助力:Simulink/Targetink 模型 | 接口分析 | 手动测试用例设计 | 自动生成测试用例:TASMO,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • Simulink/Targetink 模型
  • 如何利用TPT对Simulink模型进行测试
  • 接口分析
  • 手动测试用例设计
  • 自动生成测试用例:TASMO
  • 测试执行
  • 运行前编译
  • 支持复杂的测试套件
  • 对测试的评估分析
  • MiL-SiL-PiL 的背靠背测试
  • 通过MATLAB工具箱控制TPT
  • 符合ISO26262标准的MiL测试
  • 在TPT中监测接口信号和内部信号
  • 使用TPT进行Simulink/Targetlink模型测试的优势

Simulink/Targetink 模型

TPT作为一款嵌入式软件的模型动态测试工具,支持对Simulink和Targetlink模型的测试,在Simulink中运行的模型无论大小都可以在TPT中进行测试。TPT能管理测试,并且能简化测试创建、管理、维护和分析的工作,节省时间,提高效率。所以,TPT是一款对Simulink和Targetlink模型进行MiL测试的理想工具。

如何利用TPT对Simulink模型进行测试

利用TPT设置和执行Simulink和Targetlink模型测试是很简单的。用户只需要在TPT中进行配置,然后TPT就会在后台自动运行——包括执行MiL-SiL的背靠背测试。

一般情况下,MiL测试会在Simulink中进行。用户只需要在Simulink中以MiL测试模式创建测试用例并执行即可。然后,用户可以在Targetlink,Embedded Coder或Simulink Coder中生成代码,并使用TPT在SiL测试模式下执行代码测试。自动生成代码之后,即可自动执行测试用例。这样,测试结果对比会很容易——通过一种自动化的方式与容错信号进行对比。

TPT17推出MATLAB Toolbox,用户可以直接在MATLAB/Simulink平台中直接使用TPT。

【北汇信息】TPT | 使用案例:MATLAB/Simulink 平台

接口分析

TPT在执行测试之前,需要对Simulink/Targetlink模型的接口进行分析:根据用户的设置,TPT会自动分析模型中的所有信号和参数。因此,TPT能准确地对模型接口进行分析,不仅是其中的信号和参数,还包括数据类型,阵列,总线,范围,消息信号,内部信号等等。所有这些数据都可以通过TPT进行变更和监测。

手动测试用例设计

TPT中的测试用例可以手动建模成功能测试用例。TPT支持很多独一无二的模型测试技术。TPT中的测试用例设计是非常自然、直观的。所以,使用TPT在Simulink和Targetlink中创建测试和维护测试都是比较简单的。

自动生成测试用例:TASMO

TPT提供TASMO自动生成测试用例以满足客户对覆盖度(条件覆盖、决策覆盖)的要求。客户只需要选择需要的覆盖度标准,TASMO会据此搜索测试用例。TASMO会为Simulink模型,Stateflow模型或Targetlink模型自动生成尽可能少的测试用例来达到最大的结构覆盖指标。这些生成的测试用例也可以复用在背靠背回归测试中。

在这里插入图片描述

测试执行

TPT会自动生成测试框架,其中包含被测模型的副本以及会完成测试工作的TPT test driver。TPT能远程启动并控制整个测试执行过程。

运行前编译

在测试执行之前,TPT可以帮助客户将Simulink模型自动编译成C代码。相较于单纯的模型测试,这一功能会大量减少测试执行的时间。同时,TPT支持在不同的的机器上执行测试。

支持复杂的测试套件

复杂的测试或测试套件可以在无人情况下通过批处理模式执行,也可以利用TPT 的Jenkins插件进行,比如隔夜执行的情况。TPT还可以并行地远程控制几个MATLAB实例,这可以极大地减少测试执行时间。

对测试的评估分析

在测试执行之后,TPT会对在信号和参数中收集到的数据进行评估。内部信号可以使用TPT进行自动追踪,也会包含在评估中。并且评估完成后TPT会生成评估报告。

MiL-SiL-PiL 的背靠背测试

Simulink/Targetlink模型的测试用例可以在MiL,SiL,PiL阶段执行。这三个阶段的行为可以在TPT中简单的进行对比。用户只需使用不同的仿真模式(MiL、SiL、PiL)设置几种执行配置,并启用和配置背靠背的评估,TPT就可以自动在设置好的模式下执行这些测试并对测试结果进行对比。

在这里插入图片描述

通过MATLAB工具箱控制TPT

在TPT17及以后的版本中,用户可以通过MATLAB工具箱在MATLAB/Simulink中控制TPT。用户可以在Simulink/Targetlink的子系统中建立TPT工程,包含以下功能:

  • 直接在Simulink中控制TPT
  • 为所选MATLAB/Simulink子系统创建TPT工程
  • 测试执行过程中自动记录子系统中信号的选择
  • 打开所选子系统的现有TPT项目
  • 实现MATLAB/Simulink模型与已有TPT项目之间的链接
  • 接口自动化导入TPT
  • 在TPT中建立Simulink平台

【北汇信息】TPT | 使用TPT工具箱测试Simulink模型

符合ISO26262标准的MiL测试

TPT为用户提供测试工具,支持并促进用户根据相关安全标准开发安全相关系统。针对软件开发,ISO26262对不同开发阶段的要求做出了定义,TPT可以满足ISO26262 ASIL-A到ASIL-D对软件的测试要求。

在TPT中监测接口信号和内部信号

如果用户需要同时监测接口信号和内部信号,那么可以在TPT中记录这些信号类型。针对Simulink/Targetlink模型,用户可以在TPT中进行信号配置,并最终在测试报告中观测到这些信号。

【北汇信息】TPT | 使用TPT记录Simulink信号

使用TPT进行Simulink/Targetlink模型测试的优势

  • 总线信号、消息信号、向量、模型引用、触发的子系统,以及许多其他常见的建模技术的运用
  • 对Simulink/Targetlink数据字典的分析
  • 对Simulink/Stateflow/Targetlink模型的处理
  • 支持缩放
  • 支持MiL和SiL仿真中的背靠背测试
  • 生成Simulink/Targetlink模型测试用例,以实现模型覆盖
  • 支持MiL-SiL-PiL测试
  • 支持Simulink Coder和Embedded Coder
  • 支持TPT MATLAB 工具箱
  • 支持MATLAB/Simulink/Targetlink的MiL-SiL-PiL测试
  • 支持AUTOSAR和AUTOSAR AP

喜欢本篇文章的话记得💬评论💖点赞⭐收藏
➕更多技术文章直播课程,敬请持续关注北汇信息➕
⬇️业务咨询请私信北汇信息或在官网留言⬇️
📩📩📩

这篇关于如何高效的进行Simulink模型测试?模型动态测试工具TPT来助力:Simulink/Targetink 模型 | 接口分析 | 手动测试用例设计 | 自动生成测试用例:TASMO的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的

Python从Word文档中提取图片并生成PPT的操作代码

《Python从Word文档中提取图片并生成PPT的操作代码》在日常办公场景中,我们经常需要从Word文档中提取图片,并将这些图片整理到PowerPoint幻灯片中,手动完成这一任务既耗时又容易出错,... 目录引言背景与需求解决方案概述代码解析代码核心逻辑说明总结引言在日常办公场景中,我们经常需要从 W

基于Redis自动过期的流处理暂停机制

《基于Redis自动过期的流处理暂停机制》基于Redis自动过期的流处理暂停机制是一种高效、可靠且易于实现的解决方案,防止延时过大的数据影响实时处理自动恢复处理,以避免积压的数据影响实时性,下面就来详... 目录核心思路代码实现1. 初始化Redis连接和键前缀2. 接收数据时检查暂停状态3. 检测到延时过

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

使用SpringBoot+InfluxDB实现高效数据存储与查询

《使用SpringBoot+InfluxDB实现高效数据存储与查询》InfluxDB是一个开源的时间序列数据库,特别适合处理带有时间戳的监控数据、指标数据等,下面详细介绍如何在SpringBoot项目... 目录1、项目介绍2、 InfluxDB 介绍3、Spring Boot 配置 InfluxDB4、I

C#高效实现Word文档内容查找与替换的6种方法

《C#高效实现Word文档内容查找与替换的6种方法》在日常文档处理工作中,尤其是面对大型Word文档时,手动查找、替换文本往往既耗时又容易出错,本文整理了C#查找与替换Word内容的6种方法,大家可以... 目录环境准备方法一:查找文本并替换为新文本方法二:使用正则表达式查找并替换文本方法三:将文本替换为图

MySQL按时间维度对亿级数据表进行平滑分表

《MySQL按时间维度对亿级数据表进行平滑分表》本文将以一个真实的4亿数据表分表案例为基础,详细介绍如何在不影响线上业务的情况下,完成按时间维度分表的完整过程,感兴趣的小伙伴可以了解一下... 目录引言一、为什么我们需要分表1.1 单表数据量过大的问题1.2 分表方案选型二、分表前的准备工作2.1 数据评估