4. 模型测试 - 测试过程、模型测试方法概述

本文介绍了模型测试的重要性,详细讲解了Simulink模型的测试过程,包括单元测试、集成测试、功能测试和覆盖度检查,并提到了Model Advisor、Design Verifier、Simulink Test和Coverage Analyzer等工具的用途,旨在确保模型的准确性和可靠性。
摘要由CSDN通过智能技术生成


专题目录

4. 模型测试 - 测试过程、模型测试方法概述

4.1 测试过程概述

  • 众所周知,测试是软件开发过程中的一个重要组成部分,贯穿整个软件开发生命周期,保证了软件的正确性和可靠性,对于模型来说,也需要进行严格的测试工作,确保模型的准确性。
  • 根据测试阶段,可以把测试分为如下阶段 :
    • 单元测试 :对小模块单元进行检查和验证,比如一个chart模块;
    • 集成测试 :对各个模块集成后的系统进行测试;
    • 确认测试 :检查与证实软件是否满足软件需求说明书中规定的要求;
    • 系统测试 :集成硬件和软件系统,在真实或模拟系统运行的环境下,检查完整的程序系统是否能和系统正确配置、连接,并满足用户需求;
    • 验收测试 :在系统测试后期,以用户测试为主,或有测试人员等质量保证人员共同参与的验证性测试。
  • 按是否需要运行测试软件分类:
    • 静态测试 :不实际运行被测软件,而是直接分析软件的形式和结构,查找缺陷;
    • 动态测试 :运行被测软件,通过有效的测试用例(对应的输入、输出关系)来分析被测程序的运行情况或进行跟踪对比,发现程序问题。
  • 对于开发工作人员,一般需要进行单元测试和集成测试,确保开发模块的正确性

4.2 simulink模型测试方法概述

  • simulink模型建立完成后,为了确保模型的准确性,提供了完整的测试方法和手段,包括了静态检测方法:建模规范检查、设计缺陷检查动态检测方法:功能测试、覆盖度检查
    在这里插入图片描述

1)建模规范检查 Model Advisor

  • Model Advisor是simulink自带的静态模型检查器,能够根据建模规则,建模标准对模型进行检查,并且能够进行部分错误的自动修改,帮助开发人员和团队搭建高质量的模型和使用高度统一的风格。
  • Model Advisor 的使用方法介绍见后续文章:模型测试 - Model Advisor 建模规范检查。

2)设计缺陷检查 Design Verifier

  • Design Verifier 有如下三大功能:
    • Design Error Detection — 查找死逻辑、除以零、溢出等问题
    • Test Generation — 基于模型和覆盖度来生成测试用例
    • Property Proving — 确定模型的输出和行为是满足预期要求的
  • 最常使用的是第一个功能,对死逻辑、除以零、溢出等设计缺陷问题的检查
  • Design Verifier 的使用方法介绍见后续文章:模型测试 - Design Verifier 设计缺陷检查

3)功能测试 Sumilink Test

  • Sumilink Test 是动态检测工具,也是单元测试最常用的动态检测工具。
  • 通过编写或者导入测试用例,检测模型运行的准确性。
  • Sumilink Test 的使用方法介绍见后续文章:模型测试 - Sumilink Test 功能测试

4)测试覆盖度检查 Coverage Analyzer

  • Coverage Analyzer 覆盖度是用来表示一个测试用例对模型逻辑结构的所有路径测试的完成程度,适用于对模型进行结构测试的测试用例
  • 一个完整的模型结构测试用例应当对模型或状态机内的每条路径都有唯一的条件进行测试,并且不与其他路径条件发生冲突
  • 覆盖度的作用对象是模型的测试用例,不是模型对象本身
  • 模型测试检查中,工作量最大的就是编写足够的测试用例,达到测试覆盖度目标
  • Coverage Analyzer 的使用方法介绍见后续文章:模型测试 - Coverage Analyzer 测试覆盖度检查

5)Polyspace代码检查工具

  • 此外,matlab也有对代码进行检查的工具 - Polyspace
  • Polyspace是代码静态,动态检查工具,可以对源代码进行静态检查:检查代码规范编码错误静态度量(代码量,调用次数);也可以动态检查运行时错误(算术溢出,缓冲区溢出,被零除和其他错误),测试覆盖度检测。
  • Polyspace 的使用方法介绍见后续文章:

感谢阅读 若有错误 敬请见谅!!!


  • 7
    点赞
  • 68
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Simulink孤岛检测是一种在Simulink系统模型中的子系统和模块之间进行连接和依赖关系检测的方法。在较大和复杂的Simulink模型中,存在许多子系统和模块,它们相互之间通过输入和输出信号进行连接以实现功能。然而,有时候在模型中可能会存在一些“孤岛”,即一个或多个子系统没有连接到其他部分,导致模型无法正常工作。 Simulink孤岛检测的目的是帮助工程师识别和修复这种孤岛现象。通常,孤岛是由于模型的复杂性或操作失误所引起的。孤岛可能会导致信号无法流动,功能无法实现,或者导致模型无法编译和模拟。因此,及早发现孤岛并进行解决非常重要。 Simulink提供了一些工具和技术来进行孤岛检测。首先,可以通过使用模型浏览器查看模型的整体结构,识别是否存在未连接的子系统或模块。其次,可以使用信号线的颜色编码来检查信号的流动情况,是否存在断开或未连接的情况。还可以使用信号线跟踪工具来跟踪信号的路径,以确定其是否受到孤岛的影响。 一旦发现孤岛,可以采取一些措施来解决问题。首先,可以确定孤岛的原因,可能是信号连接错误、模块位置错误或者缺少必要的输入。然后,可以重新连接相关的子系统和模块,或者添加缺失的连接。最后,还需要进行模型的验证和测试,以确保修复后的模型正常工作。 综上所述,Simulink孤岛检测是一种帮助识别和解决未连接子系统和模块的问题的方法。通过使用Simulink提供的工具和技术,工程师可以及早发现并修复孤岛,确保模型的正常运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

园长QwQ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值