Simulink模型自动化测试

这篇具有很好参考价值的文章主要介绍了Simulink模型自动化测试。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


本文介绍如何使用Simulink Test Manager构建一个测试工程,实现对模型的自动测试。

Test Manager简介

Test Manager是Matlab Simulink建模功能的子模块,用于检测逻辑流程图的功能。其在生成Test项目时会根据所选模型生成两个文件,一为mldatx文件,用于记录测试中的设置;二为xls(xlsx)表格文档文件,我们可以在表格中设置某个时间的输入值,并给出输出预测,模块运行后就会根据给定的输入值运行,并将真实输出值与预测输出值进行比较,最终生成测试结果。

构建一个测试模型

构建一个测试模型,如下图,该模型实现的功能为档IN1为真时OUT1=1,当IN1为假时,OUT1=0;
Simulink模型自动化测试

并在模型上添加IN/OUT Port口;
Simulink模型自动化测试

使用TestManager新建一个测试模板

打开Simulink Test Manager

在Simulink上面选择APPS->Simulink Test,在新的TESTS工具栏中选择Simulink Test Manager
Simulink模型自动化测试

Simulink模型自动化测试

通过教程创建一个测试用例

第一步,在新生成的Test Manager窗口中选择“基于电子表格中指定的数据创建新测试”,通过这个选项可以额外生成Excel表格文档文件,方便后续的测试。
Simulink模型自动化测试

随后开始创建测试文件。在第一步中,如果已有现成的Excel表格文档文件,则选择上方选项,并在路径中选择要使用的表格;若没有,则选择下方的创建选项。
Simulink模型自动化测试

第二步,选择Model和Harness。若事先创建过Test Harness,就可在下方的选项中选择要测试部分,未创建或不选择将默认为“None”,本选项会测试该模型中的所有内容。
这里如果需要测试模型中的某一部分功能,可以对该部分模型创建Test Harness,这样可以选择该Test Harness进行针对性测试,不选择则是对整个模型进行测试。
Simulink模型自动化测试

第三步,选择数据来源。“Parameters”仅在信号线名称与数据字典关联后显示。默认“Inputs”和“Parameters”已勾选。需要手动勾选最后一个“Comparison”选项,否则生成的表格中将没有预测输出部分。后续也无法将实际输出和预测输出进行比对。下侧为测试范围选择,Yes选项会选择所有项目,No选项选择后可以选择屏蔽不参与测试的内容。
这里“Parameters”可以不勾选,目前实际测试过程中未使用过相关内容。
Simulink模型自动化测试

第四步指定生成的表格所包含的单元表页数及其名称。
Simulink模型自动化测试

第五步设定所生成文件的位置和名字,上方为mldatx文件,下方为xlsx文件。
Simulink模型自动化测试

创建成功后结果:
Simulink模型自动化测试

修改测试输入输出进行测试

测试表格说明

Simulink模型自动化测试

图中表格的A列“time”即为输入信号的时间,初始只有0和10两个时间点(单位为秒),可手动添加。右侧B列起的内容为输入信号名称,通过修改本列中对应时间行的数值即可改变该信号在特定时间的不同输入值,不可为空。C列第二个time后为输出预测部分,其右侧D列内容为输出信号在特定时间的输出预测值,可以通过修改这部分的内容完成对输出的预测,并在测试中与实际输出值比对。

编辑表格内信息

在左侧的输入信号下添加时间和输入值,并在更改右侧的预测值。可以写成函数形式,但是可能会对后续的修改造成影响,所以除非输入输出的关系特别简单,否则一般不推荐使用。
注意:编辑表格时应注意输入的变化应在一个周期内变化,我这里设置的步长为0.01S,所以输入每次均在0.01S变化,若超过步长则会默认为斜线变化导致与预期不一致。
编辑结果如下图所示:
Simulink模型自动化测试

执行测试

选中需要测试的Test Case点击Run执行测试。
Simulink模型自动化测试

结果分析

默认配置下仅包含Baseline Criteria Result和Sim Output,Baseline Criteria Result右侧为测试结果和预期结果的比对。
Simulink模型自动化测试

默认配置下仅包含输出部分,如果需要输入部分的曲线,需要勾选测试用例中INPUTS部分的Include input data in test result选项。
Simulink模型自动化测试

勾选后的测试结果如下:
Simulink模型自动化测试

模拟测试与预期不一致情况

修改测试表格如下:
Simulink模型自动化测试

测试结果:
Simulink模型自动化测试

可以看到测试失败,右侧预期与模拟的结果显示不一致,蓝色线为预期的输出,红色线为模拟输出,下面的差别也能看出来实际结果与预期的不一致。

测试报告生成

选中测试结果,点击上方TESTS->Report
Simulink模型自动化测试

在新的窗口中选择测试报告的相关信息并Create测试报告
Simulink模型自动化测试

结束语

使用这种方式已经可以对模型进行全方位的测试,并且可以实现自动化测试。但是这种方式也存在一些弊端,主要是使用起来不是很方便,但是这种生成输入输出excel表格的方式很实用。文章来源地址https://www.toymoban.com/news/detail-434109.html

到了这里,关于Simulink模型自动化测试的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • UI自动化概念 + Web自动化测试框架介绍

    UI,即(User Interface简称UI用户界面)是系统和用户之间进行交互和信息交换的媒介 UI自动化测试: Web自动化测试和移动自动化测试都属于UI自动化测试,UI自动化测试就是借助自动化工具对程序UI层进行自动化的测试 从不同的阶段或层次来说,自动化测试可以分为单元测试、接口

    2024年02月08日
    浏览(45)
  • Ui自动化概念+Web自动化测试框架介绍

    目录 UI 1.UI自动化测试概念:我们先明确什么是UI 2.为什么对UI采用自动化测试? 3.什么项目适合做UI自动化测试? 4.UI自动化测试介入时机 5.UI自动化测试所属分类 Web自动化测试框架介绍 2.Selenium框架介绍及特点: Web自动化测试环境搭建 2.元素定位(一) idclassname,tagname定位 link text与

    2023年04月21日
    浏览(33)
  • 开源自动化测试框架介绍

    框架在精而不在多,毕竟还是得以我们测试工程师平常用的最多的为基准。精通以下7个框架,应该能满足你工作中的基本需求了。 https://junit.org/junit5/ Junit是一个面向Java编程语言的单元测试框架。 单元测试:针对最小的功能单元编写测试代码。Java程序最小的功能单元是方法

    2024年02月12日
    浏览(25)
  • 嵌入式软件自动化测试介绍

    什么是嵌入式测试 嵌入式软件测试的概念似乎没那么大众,很多人从字面上理解,可能会以为这是个硬件测试,那么嵌入式测试实际上是什么呢? 根据IEEE(国际电机工程师协会)的定义,嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置的简称”。而嵌入式

    2024年02月02日
    浏览(26)
  • Postman 接口自动化测试教程:入门介绍和从 0 到 1 搭建 Postman 接口自动化测试项目

     关于Postman接口自动化测试的导引,全面介绍入门基础和从零开始搭建项目的步骤。学习如何有效地使用Postman进行API测试,了解项目搭建的基础结构、环境设置和测试用例的编写。无论您是新手还是经验丰富的测试人员,这篇教程都将为您提供清晰的指导,助您轻松构建强大

    2024年03月16日
    浏览(51)
  • Python自动化测试框架:unittest介绍

    Unittest是Python中最常用的测试框架之一,它提供了丰富和强大的测试工具和方法,可以帮助开发者更好地保证代码质量和稳定性,本文就来介绍下Unittest单元测试框架。 unittest是Python的单元测试框架,它提供了一套丰富的测试工具和方法,包括测试用例、测试套件、断言、测试

    2024年02月05日
    浏览(36)
  • 自动化测试mock模块使用详解介绍

    mock简介 py3已将mock集成到unittest库中 为的就是更好的进行单元测试 简单理解, 模拟接口返回参数 通俗易懂, 直接修改接口返回参数的值 官方文档:unittest.mock --- 模拟对象库 — Python 3.11.3 文档 mock作用 解决依赖问题,达到解耦作用 当我们测试某个 目标接口(模块) 时,该

    2024年02月06日
    浏览(30)
  • 模型生成自动化测试用例

    自动产生的测试用例本就应该由程序自动执行,这其实也就是NModel推荐的模式。先回过头来看看文章中制作的模型,模型里面将登录、注销、用户名以及密码等要素都抽象出来了,而NModel是以这些抽象出来的动作(登录、注销)和状态(用户名、密码)为依据,产生测试用例

    2024年02月09日
    浏览(36)
  • Selenium基础 — Selenium自动化测试框架介绍

    Selenium是一个用于Web应用程序测试的工具。 只要在测试用例中把预期的用户行为与结果都描述出来,我们就得到了一个可以自动化运行的功能测试套件。 Selenium测试套件直接运行在浏览器中,就像真正的用户在操作浏览器一样。 Selenium也是一款同样使用Apache License 2.0协议发布

    2024年02月02日
    浏览(38)
  • 【web自动化测试】入门篇 01—— 框架介绍

    web自动化测试作为软件自动化测试领域中绕不过去的一个“香饽饽”,通常都会作为广大测试从业者的首选学习对象,相较于C/S架构的自动化来说,B/S有着其无法忽视的诸多优势,从行业发展趋、研发模式特点、测试工具支持,其整体的完整生态已经远远超过了C/S架构方面的

    2024年02月09日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包