随着国内外汽车电子架构日益复杂,面向服务的架构(Service-Oriented Architecture,SOA)设计理念逐渐从IT行业走进了汽车人的视野,近年来国内外的各OEM开始逐步推进基于SOA的整车架构。在此推进与演化过程中,S2S(Services To Signal)作为面向信号和面向服务的系统之间的交互桥梁也逐渐成为了非常基础和重要的功能。

最近,北汇信息在CSDN、视频号、B站以及百家号账户上同步进行了一次直播(回放视频已上线如下所示),一起探讨S2S的功能和针对S2S的测试解决方案。鉴于直播的时间关系,有些问题没能展开回复,此次发布文字版的问答精选,以飨读者。

【北汇信息】SOA | S2S路由功能浅析及测试解读

1, 延时的一般要求是多少?
这类的延时要求取决于各OEM的需求中对于延时的要求,与信号路由类似,此外还和总线类型有关,CAN、LIN、FlexRay由于通信机制存在差异,延时要求各不相同。一般是几毫秒或10多毫秒这个量级。

2, 功能逻辑是基于信号还是基于Service instance?
这两种都存在。

3, 对于多个源端的情况(信号或者参数来自不同,DUT不能同时收到所有的源端信息),我们如何配置transmission triggers,是否每个源端都需要配置?
每个信号都可以将transmission triggers配置成true或者false。若配置成true,则在源端收到时就会在目标端触发发送,反之则不会触发目标端的发送。

4, E2E不正确时,S2S的转发具体是什么行为?
对于Service转Signal,若Service端的E2E不正确,那么改变Service端的参数值,对应Signal端的信号值不会跟着Service端改变,而是维持Last value。Signal转Service端同理,若Signal端的E2E不正确,服务端的服务参数同样不会随信号变化。此外,E2E不正确时在另一端(目标端)可以反馈E2E错误(目标端信号或者服务参数指示源端E2E错误)。

5, TLS是否可以用CAPL实现?
TLS的仿真和测试工程都可以使用CANoe CAPL脚本编程开发实现。

6, 域控的外围I/O资源的服务化测试和S2S测试有何区别?
域控外围I/O资源的服务化测试,主要特点为:源端的信息来自于I/O资源(比如传感器的硬线信号),测试服务中的所承载的参数或数据,是否和I/O资源所要表征的状态一致(如开关的断开和闭合时对应的服务参数,是否分别与开关当前状态一致),此类测试属于功能测试的范围,比如原子服务/设备抽象服务的功能测试。S2S和上述基于域控外围I/O资源的服务化测试的区别是,S2S的源端信息来自于Service和Signal,这里的Service和Signal来源于以太网或者其他总线,而非域控本身的I/O资源。

7, 北汇信息提供的解决方案是用工具生成CANoe工程吗?
CANoe工程的各类文件(如.cfg、.tes)都是有特定格式的文本文件,从技术角度生成CANoe工程是可行的。目前北汇已经完成的S2S测试,暂时没有采用生成整个CANoe工程的方案。目前的方案是依据测试规范,通过CAPL及其它编程语言完成标准测试工程开发,而是通过定制开发的工具来解析S2S转发关系表,提取标准测试工程运行所需要的参数,从而完成测试工程的自动化配置。此方案可以减少由于S2S转发表变化而导致需要重新手动配置CANoe测试工程的工作量。

8, 用于测试开发的输入文件应该包含哪些信息?
主要包括如下三类输入信息:
1)S2S需求规范;
2)Service、Signal、E2E相关的信息(ARXML中包含,或者提供同样包含相关信息的其它类型的数据库文件)
3)S2S转发关系表
4)其他输入(需求规范中涉及的如SecOC等需求对应的输入物)

9, 基于服务的通信除了AUTOSAR的AP外还有其他的类型(如ROS2),这种AUTOSAR架构以外的S2S实现能否大致介绍下吗?
基于服务的通信用AUTOSAR的AP以外的方式实现(如ROS2或其他),这类的S2S的实现方式和基于AP的实现方案比较类似。同时直播中提到的转发过程存在逻辑转换的S2S转发大多都是基于此类方案。

10, 可以基于ARXML文件替换转发关系表,实现测试吗?
我们知道ARXML中可以包含service和signal的相关信息,以及E2E相关信息,若ARXML中定义了且完整体现了S2S转发关系信息,则也可以通过解析ARXML(替换转发关系表)的方式来实现S2S的测试。当前我们所遇到的情况,S2S转发关系表大都只是单独的文件来体现,而service、signal和E2E信息在ARXML中体现。

11, 直播中提到的S2S有两种部署方案,一个是在CP,一个是在AP,这两种应该怎么选?
直播中提到的两种部署方案是基于AUTOSAR提供的两种方案,实际上S2S的实现方案还有这两种方案以外的方案。具体需要根据整车E/E架构和控制器的软件架构去综合评估选用哪种方案,这两种方案并没有优劣之分,适用的情况和场景不同,但基于AP的方案灵活性要高一些。下图体现的是CP上部署S2S时的架构。

12, 服务测试和信号测试是否采用同一种测试方案?
S2S中信号转服务的测试和服务转信号的测试是有所不同的。首先从仿真来说前者仿真信号,后者仿真服务;其次我们对信号的监控和采集与对服务的监控和采集方法也是不同的,信号发送类型大致有周期型、事件型、事件周期型,服务接口类型有Event、Method、Field,针对不同的信号发送类型和服务接口类型,测试逻辑也会存在差异,不过总体框架都是在源端仿真,在目标端监控。

13,SOME/IP有类似CAN的那种DBC吗?
目前SOME/IP主要的数据库格式是XML或者ARXML的,我们可以通过CANoe导入XML或ARXML文件来进行SOME/IP的service的仿真。

14,若服务端采用DDS方案,当前北汇信息的仿真方案是什么样的?
从22年第四季度新发布的CANoe16.0 SP3开始,CANoe支持相对通用的DDS的仿真,在这之前,我们使用开源或者 DDS 厂商提供的库,如 pydds,RTI Connector 等,来快速搭建 DDS应用程序,并在 CANoe 中编写接口来控制仿真节点,详情可以参考我们往期直播中DDS相关的内容。目前来看,由于对DDS标准理解及实现存在差异,所以DDS仿真往往需要分析所选择DDS协议栈的特点,进行一定的定制或适配的工作。

喜欢本篇文章的话记得

SOA测试系列 | S2S路由功能浅析及测试解读之问答集锦相关推荐

  1. 小怿和你聊聊V2X测试系列之 如何实现C-V2X HIL测试(2022版)

    在我们2021年的V2X专题分享系列中,分别给大家介绍了☞ V2X应用场景.☞ V2X仿真测试.以及一篇☞V2X HIL测试,分阶段的进行V2X业务的知识普及,大家肯定记忆犹"新" ...

  2. 成都 软件 功能测试,成都软件项目验收测试 功能符合性测试 科技项目验收测试报告...

    成都功能符合性测试软件项目验收测试 科技项目验收测试报告 功能符合性测试是什么? 功能符合性测试以软件或信息系统的需求说明为依据测试软件产品功能的完备性.正确性以及适合性. 测试项:功能符合性.用户界 ...

  3. 联盛德W806-KIT开发板试用评测系列之二:ADC 功能使用与测试

    联盛德W806-KIT开发板试用评测系列 之二:ADC 功能使用与测试 作者:大信<QQ8125036> 今天着手对W806开发板ADC功能做测试,都知道ADC在物联网应用场景中常需要用到 ...

  4. 测试开发实践:网关路由功能及测试

    1.前言 当前,车内通信技术越来越负责,协议类型更加多样,不同总线及协议间的转换和路由等也更为复杂,网关作为通信枢纽的载体,其测试的复杂程度和重要性也越来越高.本文将分享网关路由测试开发过程中的经验和 ...

  5. 软路由的路由功能设置 - 初学者系列 - 学习者系列文章

    近日在某宝上买了个软路由,想着软路由的功能更强大,路由和AP功能分开,下面对该软路由系统Openwrt进行设置(笔者只用到路由功能,对于其它功能的设置,请自己找度娘). 购买的软路由为:J4125万兆 ...

  6. 三层交换(VLAN间互通+路由功能)+VTP+STP(PVST)综合实验(理论+实践=真实)

      三层交换(VLAN间互通+路由功能)+VTP+STP(PVST) 综合实验(理论+实践=经验)     [需求分析] 本实验采用双核心结构,将三层交换技术和VTP.STP.以太网通道综合一起,实现 ...

  7. camel eip_Apache Camel教程– EIP,路由,组件,测试和其他概念的简介

    camel eip 公司之间的数据交换增加了很多. 必须集成的应用程序数量也增加了. 这些接口使用不同的技术,协议和数据格式. 但是,这些应用程序的集成应以标准化的方式建模,有效实现并由自动测试支持. ...

  8. Apache Camel教程– EIP,路由,组件,测试和其他概念的简介

    公司之间的数据交换增加了很多. 必须集成的应用程序数量也增加了. 这些接口使用不同的技术,协议和数据格式. 但是,这些应用程序的集成应以标准化的方式建模,有效实现并由自动测试支持. 企业集成模式(EI ...

  9. Web API系列之三 基本功能实现

    Web API系列之二讲解了如何搭建一个WebApi的基架,本文主要在其基础之上实现基本的功能.下面开始逐步操作: 一.配置WebApi的路由-用于配置外部如何访问内部资源的url的规则 1.添加Gl ...

最新文章

  1. 中文预训练ALBERT模型来了:小模型登顶GLUE,Base版模型小10倍、速度快1倍
  2. 学业水平测试计算机模拟,高二计算机学业水平测试 模拟试题(附答案)
  3. docker 及 docker-compose 的快速安装和简单使用
  4. webpack的五个核心概念---webpack工作笔记002
  5. linux在多核处理器上的负载均衡原理(2)
  6. xp计算机定时关机怎么批销,(XP电脑定时自动关机命令.doc
  7. 电子病历基本数据集_电子病历质控的三项是因素-病历质控系统助力提升电子病历质量...
  8. Unity-使用UPR资源检测工具AssetChecker-Win进行本地资源检测
  9. 一级计算机ppt切换效果怎么做,PPT翻页效果、倒计时怎么做?一分钟变电脑大神...
  10. c语言实现简单的猜数字游戏(1~100)
  11. python 坐标轴单位标注_matlab坐标轴如何带单位标注?
  12. 小型直播系统系列-乐聊TV的开发(四)
  13. XB文件开发详解(上报证监会文件)_入门系列
  14. 考研 研究生 什么是考研 考研的第一课 全面了解考研 研究生
  15. SIMD——MMX指令集介绍
  16. 海思PQTool进行CCM调试经验
  17. Tiled使用教程(游戏地图制作)
  18. 联想服务器销售话术,经典的联想电脑销售话术实例
  19. 定点数运算c语言程序,c语言 fixed-point 定点数 运算
  20. ybt.1550 花神游历各国 题解

热门文章

  1. 2017年校园招聘ios面试题
  2. 模拟后宫oracle攻略,模拟后宫(Haramase Simulator)_模拟后宫安卓版下载-我的世界中文网...
  3. 微信小程序毕业设计论文医院挂号预约系统+后台管理系统项目源代码
  4. 【一周头条盘点】中国软件网(2017.12.25~2017.12.29)
  5. 【报告分享】2022智能消费电子行业营销白皮书-秒针系统(附下载)
  6. 英特尔®RealSense™深度摄像机D400系列的深度后处理
  7. 如何用python做表_如何使用Python中的Tkinter制作钟表?
  8. 基于区块链的p2p平台治理方案
  9. Selenium WebDriver 测试Chrome浏览器
  10. 计算机测试题目及答案6,2015职称计算机《PowerPoint》章节习题及答案(6)