实时测试模型
您可以测试您的系统环境中,如万博1manbetx®实时™,类似于您的应用程序。你开始与模型模拟在开发计算机上,然后使用software-in-the-loop(银)和processor-in-the-loop(公益诉讼)模拟。实时测试应用程序执行一个单独的目标计算机上,可以连接到一个物理系统。实时测试可以包括时间的影响,信号接口,系统响应和生产硬件。
请注意
这一主题中的信息不适用于测试在第三方测试使用ASAM长椅自标准。的信息和示例使用ASAM自执行测试,看看安装和设置仿真软件测试支持包ASAM自标准万博1manbetx万博1manbetx和实时测试与仿真软件测试支持包ASAM自标准万博1manbetx万博1manbetx。
实时测试包括:
快速原型,测试系统在一个独立的目标硬件连接到工厂。你对需求和模型验证实时测试结果。使用快速原型的结果,您可以更改您的模型和更新您的需求,之后你在独立的测试目标。
半(边境)使用万博1manbetx实时仿真软件测试一个系统,已通过验证的几个阶段,通常SIL和公益诉讼模拟。您可以使用万博1manbetx仿真软件测试™在Windows®或Linux®使用计算机实时运行测试用例万博1manbetx实时仿真软件。
总体工作流程
这个示例工作流描述了创建和执行一个实时测试的主要步骤:
创建测试用例,验证了模型与需求。运行模型模拟测试并保存基线数据。
建立了实时目标计算机。
创建测试实时测试,或重用模型模拟测试。在测试序列或测试评估块,
验证
语句评估实时执行。在测试经理,创建实时的测试用例。
配置目标设置,实时测试用例输入,回调,和迭代。添加基线或等价的标准。
执行实时测试。
分析结果在测试经理。报告结果。
实时测试注意事项
基线或等价的比较可以失败,因为缺失的数据时移数据实时目标计算机。当调查实时测试失败,找时间变化或丢失的数据点。
你不能覆盖的实时执行样品时间从模型包含一个应用程序测试序列块。代码生成的测试序列块包含一个硬编码示例。压倒一切的目标计算机采样时间可以产生意想不到的结果。
你不能登录状态,或者在一些平台上,输出端口。
你的目标计算机必须有一个文件系统使用
验证
日志记录语句和测试用例。你的目标计算机必须运行万博1manbetx实时仿真软件。
完成基本模型测试
实时测试通常需要更长的时间比对比模型试验,特别是如果你执行一套实时覆盖数的测试场景。在执行实时测试,使用桌面模拟完整的基于需求的测试。使用桌面仿真结果:
调试模型或使设计满足需求的变化。
调试测试序列。使用调试功能的测试序列编辑器。看到调试测试序列。
更新您的需求,并添加相应的测试用例。
设置目标计算机
实时测试需要一个目标计算机或外部硬件试验台。万博1manbetx仿真软件测试万博1manbetx支持目标计算机运行万博1manbetx实时仿真软件。有关更多信息,请参见:
目标计算机设置(万博1manbetx实时仿真软件)
故障诊断的实时仿真软件万博1manbetx(万博1manbetx实时仿真软件)
配置模型或测试工具
实时应用程序需要特定配置参数和信号特性。
代码生成
一个实时测试用例需要一个实时系统的目标文件。在模型或利用配置参数,应用程序选项卡,在代码生成,点击万博1manbetx仿真软件编码器。在C代码选项卡,验证系统目标文件slrealtime.tlc
。如果按钮输出部分是自定义的目标,点击那个按钮,并验证自定义的目标是slrealtime.tlc
。如果不是,选择选择目标文件系统并选择slrealtime.tlc
目标代码生成系统。
如果你的模型需要不同的系统目标文件,您可以设置回调参数使用测试用例或测试套件。实时测试执行后,将参数设置为原来的设置和清理回调。例如,这个回调开sltestProjectorController
模型和参数设置系统目标文件slrealtime.tlc
。
openExample (“sltestProjectorController”);set_param (“sltestProjectorController”,…“SystemTargetFile”,“slrealtime.tlc”);
数据导入/导出格式
模型必须使用其他数据格式数据集
。设置数据格式:
打开配置参数。
选择数据导入/导出窗格。
选择格式。
测井信号实时执行
配置您感兴趣的信号实时测试:
启动信号记录在配置参数,在数据导入/导出窗格。
每个感兴趣的信号属性名称。不愿透露姓名的信号可以被指定一个默认名称不匹配的名称基线或等效信号。在这个例子中测试工具,记录的信号有明确的名称。
添加测试用例进行实时检测
使用测试经理创建实时的测试用例。
在仿真软件将来万博1manbetx发布,应用程序选项卡下模型验证、验证和测试,选择万博1manbetx仿真软件测试。
点击万博1manbetx仿真软件测试经理。
测试经理的选择新>实时测试。
测试类型
你可以选择一个基线、等价或模拟实时测试。对于模拟试验类型,验证
语句作为通过/失败标准的测试结果。等价和基线的测试类型,等价或基线标准也是通过/失败标准。
基线——比较了信号从目标计算机返回数据的基线测试用例。比较模型模拟结果的实时执行结果,模型的基线结果添加到实时测试用例和可选的公差适用于信号。
等价——比较从模拟信号数据和实时测试,或两个实时测试。在目标计算机上运行一个实时测试,然后比较模型模拟结果:
选择模拟1目标。
清晰的模拟2的目标。
测试用例显示了两个仿真部分,模拟1和模拟2。
比较两个实时测试是相似的,除了你选择两个模拟目标。在等价的标准部分中,您可以捕获记录信号的模拟和公差申请通过/失败的分析。
模拟:评估测试结果只使用
验证
语句和实时执行。如果没有验证
语句失败,并实时测试执行,测试用例。
加载应用程序
使用这个选项,指定你想如何加载实时应用。实时应用程序从您的模型构建和测试工具。你可以加载应用程序:
模型——选择
模型
如果你是第一次运行实时测试,或您的模型改变了自从上次实时执行。模型
通常需要最长的因为它包括模型构建和下载。模型
加载的应用程序模型,构建实时应用程序,下载到目标计算机,它在目标计算机上执行。目标应用程序——选择
目标应用程序
给目标应用程序从主机到目标计算机,和执行应用程序。目标应用程序
可能是有用的,如果你想加载一个早已建好的网络下部应用程序在多个目标。目标计算机——此选项执行的应用程序实时目标电脑上已经加载。你可以更新测试用例和执行中的参数使用
目标计算机
。
这个表总结了哪些步骤和回调执行每个选项。
测试用例执行步骤(第一个) | 加载应用程序 | ||
---|---|---|---|
模型 | 目标应用程序 | 目标计算机 | |
执行预先加载回调 | 是的 | 是的 | 是的 |
加载仿真软件万博1manbetx模型 | 是的 | 没有 | 没有 |
执行post-load回调 | 是的 | 没有 | 没有 |
集信号编辑场景 | 是的 | 没有 | 没有 |
从模型构建实时应用 | 是的 | 没有 | 没有 |
实时应用程序下载到目标计算机 | 是的 | 是的 | 没有 |
设置运行时参数 | 是的 | 是的 | 是的 |
运行测试序列场景 | 是的 | 没有 | 没有 |
次执行实时回调 | 是的 | 是的 | 是的 |
执行实时应用 | 是的 | 是的 | 是的 |
执行清理回调 | 是的 | 是的 | 是的 |
模型
选择的模型生成实时应用。
测试工具
如果您使用一个测试工具生成实时应用程序,选择测试工具。
仿真设置覆盖
对于实时测试,您可以覆盖仿真停止时间,这可能是有用的在调试一个实时测试失败。考虑一个60秒的测试返回验证
由于一个错误语句失败在15秒的模型。调试模式后,您执行实时的测试来验证解决。你可以覆盖在20秒停止时间终止执行,这样可以减少所花费的时间验证解决。
回调
实时测试提供一个开始实时应用回调将执行命令之前在目标计算机上执行的应用程序。实时测试回调执行在一个序列的负载模型,构建、下载和执行步骤。回调函数和步骤执行取决于测试用例加载应用程序。
序列 | 加载应用程序: 模型 |
加载应用程序: 目标应用程序 |
加载应用程序: 目标计算机 |
---|---|---|---|
第一次执行 | 预加载回调 |
预加载回调 |
预加载回调 |
Post-load回调 |
- - - - - - | - - - - - - | |
开始实时回调 |
开始实时回调 |
开始实时回调 |
|
执行最后一个 | 清理回调 |
清理回调 |
清理回调 |
迭代
你可以执行实时迭代测试。迭代执行实时测试,方便扫描通过参数值或信号编辑场景。结果出现按迭代分组。在设置迭代的更多信息,见测试迭代。您可以创建:
提出迭代的参数集,定义中的几个参数设置参数将覆盖部分的测试用例。下迭代>表迭代,点击自动生成并选择参数集。
提出迭代从信号编辑场景——如果你的模型或测试工具使用一个信号输入,编辑以下迭代表迭代表,点击自动生成并选择信号编辑场景。如果你使用一个信号编辑场景中,加载应用程序的模型。
提出迭代测试序列场景-如果您的测试工具使用测试序列块场景中,您可以创建一个迭代每个场景的测试经理。以下迭代表,点击自动生成并选择测试序列的场景。如果你使用测试序列场景,加载应用程序的模型。
脚本迭代——使用脚本迭代使用模型变量或参数。例如,假设您正在测试一个振荡器系统和使用测试序列块使用参数创建一个方波测试信号
频率
。在测试文件,您可以使用实时测试脚本迭代覆盖5赫兹的频率扫描35赫兹。脚本迭代的价值
频率
在测试序列块。% %迭代确定最好的振荡器频率设置%创建参数集频率= 5.0:1.0:35.0;为i_iter = 1:长度(频率)%创建迭代对象testItr = sltestiteration ();%设置参数setVariable (testItr“名字”,“频率”,“源”,…测试序列的,“价值”频率(i_iter));%注册迭代addIteration (sltest_testCase testItr);结束
评估实时执行使用验证
语句
除了基线和等效信号比较,您可以评估实时测试执行使用验证
语句。一个验证
声明中评估一个逻辑表达式,并将结果返回给测试经理。使用验证
在一个测试序列或测试评估块,或者如果你有一个Stateflow®许可证,Stateflow图表。看到评估模型模拟使用验证语句。
相关的话题
- 使用仿真万博1manbetx软件实时UI创建并执行一个实时应用程序(万博1manbetx实时仿真软件)