Autosar AP(Adaptive Platform)采用面向服务的通讯,服务于高性能计算需求,通过合理分配任务,可以充分发挥硬件资源的优势,提高系统的整体性能,目前在自动驾驶、智能座舱、域控、车载中央计算机等多种复杂场景中得到应用。Simulink也支持Autosar AP 模型,然而由于Autosar AP模型的特点却很难实现模型的MiL仿真,只能转换为代码后进行功能测试,这无疑降低了MBD的开发效率,本文介绍了使用MQTester软件进行Autosar AP模型功能测试的方法。
Autosar AP 模型的特征
Autosar AP的核心是消息驱动的函数调用,为支持消息的传递,Simulink增加了两个模块, Event Receive 和 Event Send,用于将接收到的消息转换为信号,及将发出的信号转换为消息。在函数种类中增加了通过端口调用的函数类型,并增加了Function Element 及Function Element call两个模块,在模型中这个两个模块必须位于模型的顶层,对通过端口通信的函数的调用必须和函数原型分别位于不同的模型中。AP模型的这些特征导致人工建立环境过程繁琐、操作复杂、效率低下。目前使用建模软件自带的工具也只能在非常有限的情况下能成功建立可以仿真的测试环境,而人工建立测试环境无疑将使测试效率大大降低。

图 1 无法仿真的测试环境
MQTester的解决方案
自动产生测试环境
MQTester准确识别AP模型使用的各种元素,选择合适的配置参数,自动产生可仿真的测试环境,利用MQTester提供的适合多种场景的测试用例产生方法及评估方式,实现AP模型的高效测试,也补齐功能安全认证中所必须的MiL测试环节,可节省大量上车测试的时间和费用。
针对AP模型的特点,MQTester实现了以下功能:
- 自动转换输入信号为消息,转换消息为输出信号
自动识别模型中的信号属性,在必要的时自动实现信号与消息的转换
- 为使用端口的函数在新模型中产生函数调用
没有函数调用则无法对函数进行测试,MQTester自动为函数原型产生相应的函数调用,并增加函数的输入输出为被测对象端口信号,从而可以针对不同情况设置不同测试用例进行功能测试与结果评估
- 为使用端口的孤立函数调用产生函数原型
如果所调用的函数原型不存在,例如由第三方开发的函数,MQTester自动根据调用信息产生函数原型,并由参数控制输出信号的值,仿真原型函数的预期功能,实现对现有模型功能的测试。借助MQTester的实时参数修改功能,可以在测试过程的任意时间点仿真函数原型的输出值,支持各种标量、数组及总线信号
- 自动记录全局变量作为观测量
模型中的全局变量,包括stateflow中使用的全局变量可根据需要在仿真过程中记录其信号值,方便测试各种功能细节
- 使用故障注入仿真黑盒模块
使用MQTester的模型故障注入功能为模型中的黑盒模块及需要外部辅助才能正确运行的模块提供需要的输出值,以测试现有模型的功能
- 使用调度编辑器控制函数执行顺序
自动产生完整的测试环境后,各种函数均集成到一个模型中,从而可以使用调度编辑器模拟对服务的各种调度顺序,测试模型的动态功能。
在产生测试环境后可以使用MQTester提供的多种测试用例编写方法进行测试用例的编写:
- 脚本式测试用例编写方法:按照时序编写测试用例,提供辅助函数产生按规律变化的信号,信号值自动继承,非变化无需重新赋值,与仿真步长无关,可按照各种仿真步长导入测试用例。
- 列表式测试用例编写方法:系统自动为输入、输出、观测量及标定量产生列表,用户在其中输入信号取值,可以使用各种MATLAB的表达式,同样具有信号值的继承功能。
- 组合测试用例(等价类组合用例):系统自动根据信号的各种属性限制为各信号选择取值,根据需要用户可选取多个等价类取值,根据所选信号值自动产生全部组合,实现各种状况的全覆盖测试。

图 2 MQTester产生的测试环境示例
此外,MQTester还提供多种强有力的辅助测试功能:
参数实时修改功能提供在仿真过程中随时修改参数的能力,此功能不仅可以用于仿真函数原型的输出信号,也可以用于对参数的调试,使调试简单易行,测试工作高效便捷。
模型层级的故障注入功能可以随时修改信号的中间值,是接口测试不可或缺的功能。利用此功能还可以在模型的一部分不具备正确功能情况下对相关的另一部分进行测试,从而加快开发进程,是敏捷开发的必要功能。
总结
Autosar AP模型基于面向服务的通信架构,广泛应用于自动驾驶、智能座舱等复杂场景,但其消息驱动的函数调用特性(如Event Receive/Send模块、端口调用函数等)导致传统Simulink环境难以直接实现MiL仿真,人工搭建测试环境效率低下。
MQTester通过自动化技术有效解决了这些问题,实现了测试环境的自动构建,并提供增强的测试功能,解决测试中的痛点与难点;提供多样化用例设计能力,结合MATLAB表达式和等价类覆盖,提升测试效率;参数修改与故障注入功能可实现模型部分功能的测试,显著加速开发迭代。
MQTester弥补了Autosar AP模型MiL测试的空白,为Autosar AP的MBD开发方式提供了关键的工具支撑。
联系我们
浙江求索软件科技有限公司
手机: +86 150 108 23652
微信: yuyongke1797448900
E-mail: yuyongke@model-soft.com
URL: www.model-soft.com
Proudly powered by Qiusuo Software