1、基于模型的测试和验证工具--Reactis

基于模型的开发(Model-Based Development)的设计方法以其直观、快速、高效等优势,在汽车、航空航天等的基于模型的开发嵌入式控制系统设计中得到广泛的应用。它不同于传统的设计方法,不是使用复杂的结构和编程语言,而是使用MBD平台来搭建各种功能的模块。通过模块的仿真工具,可以进行系统测试,产生快速原型等。不仅可以提前和加强测试与验证,而且可以利用Hardware-in-the-loop仿真方法,实现快速高效的系统动态测试。

传统方式的设计方法是先设计的硬件系统原型实体,然后进行测试并在后续的设计中不断改进,但是在硬件阶段发现问题很难,而且需要大量的时间和成本。基于模型的设计就是先建立算法模型、物理模型以及环境模型,然后基于MATLAB的Simulink平台,进行系统测试与仿真,在后续的设计中不断进行仿真,再用自动代码创建工具产生实际系统所需的软件代码。实际上是将测试提前到了仿真阶段,设计制造人员能尽早发现并解决问题。基于模型的设计在最后阶段要进行硬件原型测试,主要是为了验证良好的设计,并不是要找出不良的设计。

Reactis是针对Simulink/Stateflow环境生成的模型文件*.mdl,产生测试用例,进行仿真、测试和验证的工具。它使得设计工程师不需要等到V模型的右侧才进行测试验证,而是在模型设计阶段,即系统结构设计和子系统模块设计阶段就能够对系统进行测试验证。在更早的设计阶段保证系统的安全性和功能的正确。同时,Reactis高效、高覆盖度的测试用例也可以用于独立C代码的测试,单元测试和系统测试。

Reactis是一款基于模型的测试、仿真和验证工具。

其中包含三个子功能模块:

Reactis Tester——生成精简高效的测试用例;

Reactis Simulator ——对模型进行仿真测试;

Reactis Validator —— 对模型与系统要求的一致性进行验证。

2、Reactis的主要特点

• 根据Simulink/Stateflow或TargetLink的模型自动创建测试用例

• 用户可以自定义测试目标

• 用户可以自定义测试用例的创建准则

• 自动化的测试和验证功能,更快完成模型和系统的详尽分析,帮助客户节约大量的时间和成本

• 支持MC/DC (Modified Condition Decision Coverage)准则

• 提供详细的覆盖范围报告,包括测试集覆盖到的以及未覆盖的内容

• 有断点设置功能,用户可以单步执行或是选择以模块为单位执行

• 与传统的调试工具界面相似,用户使用方便

• 附有详细的例子和教程,可帮助用户尽快学习并掌握

3、Reactis子功能模块--Tester

Reactis以其专利的算法,快速生成高覆盖度的测试用例,并删除冗余的测试用例。这样生成的测试用例不仅可以用于模型测试,也可以导出*.m/*.mat/*.csv等格式文件,用于后期的代码测试,单元测试和系统测试。Reactis的测试用例生成器可以对已有的测试用例进行扩展,可以随机生成测试用例,可以根据系统的特定方面,如分支,MC/DC等等进行扩展。如下图所示:

覆盖规则包括:Decision, Condition, and Modified Condition/Decision Coverage (MC/DC).

针对Simulink的覆盖规则:Conditional Subsystem Coverage, Branch Coverage, Lookup Table Coverage.

针对Stateflow的覆盖规则:State, condition-action, transition-action.

4、Reactis子功能模块--Simulator

Reactis Simulator使用户能够可视化执行Simulink/Stateflow模型。模拟器的用户界面是与传统的编程语言调试界面相似,用户在仿真模型时可选择单步执行(step-by-step)或者以模块为单位执行(block-by-block) ,也可以设置断点。模拟器还可以

• 在仿真时反向执行

• 可控的重播Reactis Tester创建的测试

• 图形化显示不同的测试准则

• 微调Tester产生的测试案例

5、Reactis子功能模块--Validator

Reactis Validator自动在模型中搜索违反了用户指定规则的部分,当Validator发现有违规发生,就会自动创建一个测试用例来证明该违规事件,然后就可以在Reactis Simulator中执行该测试,了解事件发生的顺序来查找问题的原因。这个工具可以早期发现设计错误和不一致之处,并减少了设计审查所需的手工工作。

matlab基于模型的测试与验证,基于模型的测试和验证工具——Reactis相关推荐

  1. 一套完整的基于随机森林的机器学习流程(特征选择、交叉验证、模型评估))...

    机器学习实操(以随机森林为例) 为了展示随机森林的操作,我们用一套早期的前列腺癌和癌旁基因表达芯片数据集,包含102个样品(50个正常,52个肿瘤),2个分组和9021个变量 (基因).(https: ...

  2. polyspace和matlab的关系,关于Polyspace应用到基于模型的设计可能性分析和介绍

    描述 Polyspace 自 2013b 版本起开始集成到 MATLAB 平台,利用其强大的静态分析和形式化验证功能完善基于模型设计的过程,同时 MATLAB 的脚本处理能力也加强了验证的自动化过程, ...

  3. ML之RF:基于葡萄牙银行机构营销活动数据集(年龄/职业/婚姻/违约等)利用Pipeline框架(两种类型特征并行处理)+RF模型预测(调参+交叉验证评估+模型推理)客户是否购买该银行的产品二分类案例

    ML之RF:基于葡萄牙银行机构营销活动数据集(年龄/职业/婚姻/违约等)利用Pipeline框架(两种类型特征并行处理)+RF模型预测(调参+交叉验证评估+模型推理)客户是否购买该银行的产品二分类案例 ...

  4. TF之pix2pix:基于TF利用Facades数据集训练pix2pix模型、测试并进行生成过程全记录

    TF之pix2pix:基于TF利用Facades数据集训练pix2pix模型.测试并进行生成过程全记录 目录 TB监控 1.SCALARS 2.IMAGES 3.GRAPHS 4.DISTRIBUTI ...

  5. matlab怎么利用圆形度提取园,基于Matlab+GUI图像处理的物料粒度与圆形度测试.pdf...

    基于Matlab+GUI图像处理的物料粒度与圆形度测试.pdf 第36卷第2期 中国农机化学报 Vol_36No.2 2015年3月 JournalofChinese Mechanization Ma ...

  6. 基于MATLAB的电弧仿真模型(Mayr/Cassie 电弧模型)

    文章目录 前言 一.Mayr电弧模型 1. 模型简介 2. 基于simulink的模型仿真 二.Cassie电弧模型 1. 模型简介 2. 基于simulink的模型仿真 总结 前言 故障电弧的识别是 ...

  7. R语言生存分析详解:KM曲线、COX比例风险模型、HR值解读、模型比较、残差分析、是否比例风险验证:基于survival包lung数据集

    R语言生存分析详解:KM曲线.COX比例风险模型.HR值解读.模型比较.残差分析.是否比例风险验证:基于survival包lung数据集 目录

  8. 基于投入导向的超效率CCR-DEA模型(MATLAB)

    采用 CCR模型与超效率 DEA模型,在测算结果上完全相同:但对于效率项而言,每一个效率项都获得了一个全新且数值大于 1 的解. 基于投入导向的超效率CCR模型为: 借鉴参考文献[1],给出如下径向超 ...

  9. matlab电梯速度,基于Matlab的多速度模式电梯群控系统模型仿真

    Vol. 17 No. 8 系 统 仿 真 学 报 Aug. 2005 JOURNAL OF SYSTEM SIMULATION ·1997· 基于 Matlab 的多速度模式电梯群控系统模型仿真 李 ...

  10. Matlab 预防性维修,基于故障预测的预防性维修策略优化模型.pdf

    基于故障预测的预防性维修策略优化模型 第7期 组 合机床 与 自动 化加 工技 术 No.7 2015年7月 M odularM achineTool& AutomaticManufactur ...

最新文章

  1. Servlet开发入门
  2. 手脱FSG 2.0 - bart/xt
  3. iOS之深入解析AppDelegate重构
  4. IDA64 Fatal error before kernel init
  5. OpenCV_05 形态学操作:连通性+腐蚀和膨胀+开闭运算+礼帽和黑帽
  6. JAVA的项目文件夹_Java中Project项目文件夹的绝对路径
  7. 黑马程序员_io流详解
  8. 智慧女人——你懂吗?
  9. Linux环境安装ghostscript-9.25
  10. C++复数运算符重载,复数开平方
  11. [Opencv]实验:实现窗宽窗位调节(附源码及解析)
  12. LiveCharts 设计使用
  13. c# u盘使用记录_C#检测是否有u盘插入的方法
  14. java spring 中 每小时一次_spring 定时任务的 执行时间设置规则
  15. hive实现获取当前季度第一天
  16. 三春过后诸芳尽. 荼蘼
  17. overleaf表格_搞定LaTeX论文中的表格
  18. web学习-项目练习-No.4-朋友圈
  19. 由一条关于普元软件的新闻产生的感想
  20. DockOne微信分享(一二八):容器如何监控?

热门文章

  1. 13.GitLab api
  2. 13.卷1(套接字联网API)---守护进程和 inetd 超级服务器
  3. 4.高性能MySQL --- Schema与数据类型优化
  4. android finish 判断当前_Android开发,源码分析finish()和onBackPressed()的区别
  5. 编程语言-Java-问题整理
  6. iOS - 数组字典模型根据模型属性key排序
  7. Xamarin University-----Xamarin Mobile Certification Exam考试经历(还没写完)
  8. k-d tree学习总结
  9. Yii 多表关联relations,需要与with()方法联合使用
  10. Centos挂载windows共享文件夹