大数跨境

SmartDDS——让DDS研发、测试更高效

SmartDDS——让DDS研发、测试更高效 怿星科技
2024-03-29
1

我们在上篇文章《DDS技术概述及测试策略与方案》中对DDS技术在车载通信的应用及对DDS测试策略进行了一定的分析,同时给出了怿星科技针对DDS测试的解决方案。该方案覆盖了DDS协议一致性测试、接口测试、Qos测试、互操作测试。本文主要介绍该解决方案中的自动化测试软件:SmartDDS。


SmartDDS


SmartDDS介绍



SmartDDS是怿星科技基DDS相关实现标准以及在车载通信应用上的具体实现,并结合以往测试经验,完全自研开发的一套支DDS中间件的功能及性能特性的全覆盖测试验证产品,以确DDS在车载通信应用下的应用场景正常落地。SmartDDS支持测试用例管理、参数配置、自动化测试及测试报告&Log生成。


SmartDDS交付物包括:

1.测试规范:测试规范说明测试执行的软硬件环境,详细描述各测试用例的测试目的、测试步骤和评价标准

2.DIT组件:SmartDDS通过DIT组件(DDS Inner Tester)调用DDS接口

3.测试软件:SmartDDS


SmartDDS覆盖的测试内容



SmartDDS能够覆盖上篇文章中所描述的DDS测试全景图中所有测试内容,目前怿星科技已针对DDS、RTPS、Security、XTypes几份核心协议完成协议一致性、接口、Qos、安全认证及XTypes的测试规范及测试软件的开发调试工作,且在DDS的参数配置、自定义Qos、性能稳定性及路由测试方面也有一定的开发及验证工作,这部分内容基本属于定制化的需求,若读者对这块感兴趣可以联系我们进一步交流。



SmartDDS运行环境



SmartDDS运行环境如下图所示:



1.运行环境依赖上位机、程控电源、ETS4650

  • 程控电源为DUT供电

  • 上位机控制程控电源进行DUT的启停

  • ETS4650 是一种车载以太网接口转换模块,支持100/1000BASE-T1与100/1000BASE-TX接口互转,实现DUT与上位机之间的正常通信

2.兼容Windows和Linux环境


SmartDDS测试执行依赖项



由于DDS以链接库形式向外暴露接口,无法直接调用DDS接口,因此需要在DUT端集成DIT。DIT(DDS Inner Tester)是一个测试中间件,基于DDS标准协议开发,目的在于支撑SmartDDS与DUT端DDS之间的通信。SmartDDS通过DIT调用被测DDS的接口,进行实体的创建、数据的发送等行为,并将执行结果返回给SmartDDS。SmartDDS通过标准的JSON格式,与被测DDS之间交互。

DIT遵循DCPS统一接口,深入DDS的底层,通过接口调用的方式实现DDS应用管控。由于被测DDS可能运行在不同的操作系统(Linux、QNX等)上,不同操作的被测DDS需要适配集成不同的DIT。DIT的集成依赖DUT的交叉编译工具链。


SmartDDS软件开发



SmartDDS测试软件完全使用Python语言进行开发,测试用例基于Robot Framework自动化测试框架,使用关键字驱动,实现测试用例的管理和测试报告的输出。



SmartDDS的主要功能模块如下:

1.Testsuites & Testcases

用于查看、勾选指定的测试用例

2.参数配置

用于配置测试环境,比如DUT的MAC地址、IP地址等

3.用例详情

用于显示指定测试用例的详细步骤以及对应的参数

4.实时日志显示

用于显示测试过程中步骤的执行情况

5.测试控制

用于执行测试、停止测试、查看报告等



SmartDDS测试执行过程



下面展示DDS测试的执行过程,为便于展示,被测系统为Windows主机中运行的Ubuntu虚拟机,主机和虚拟机中均集成了DIT。

1.启动测试软件SmartDDS

2.参数配置:配置测试端和被测端IP、端口号,创建实体的domainId等

3.勾选用例:勾选想要运行的测试用例,查看用例详情

4.测试执行:执行测试,可查看实时日志

5.查看报告:SmartDDS支持生成不同格式的测试报告,如HTML(默认)、Excel



6.分析测试报告

我们以[TG1_TC12]Data子消息的writerSN测试(连续性)这条用例的报告为例,说明测试用例执行过程以及分析步骤。



从测试报告中可以看出这条测试用例的执行步骤如下:

1.SmartDDS向DIT发出指令,在DUT端创建发布者,在测试端创建订阅者。

2.发布者发出10条数据。

3.监控订阅者收到的DATA报文的writerSN字段是否是连续的。

从运行实际结果来看,订阅者收到的一系列的DATA子消息的writerSN依次从1到10,满足要求,用例通过。



DDS协议测试主要验证DDS中间在车载通信应用下的功能及性能特性的准确性,本篇文章主要介绍了怿星科技自主研发的DDS自动化测试软件-SmartDDS,能够全面支撑主机厂及供应商对DDS的测试需求,同时支持对某些特定配置及测试需求的拓展开发。如果想了解更多关于DDS协议测试解决方案以及SmartDDS的信息,欢迎联系我们。



往期推荐

DDS技术概述及测试策略与方案

怿星科技测试实验室服务介绍


【声明】内容源于网络
0
0
怿星科技
让智能汽车研发更高效!
内容 428
粉丝 0
怿星科技 让智能汽车研发更高效!
总阅读1.3k
粉丝0
内容428