面向SDV的在环测试深度解析——持续集成篇

一、引言

在软件定义汽车(SDV)时代,软件在环(Software-in-the-Loop,SIL)测试已然成为缩短开发周期、从源头保障质量的核心环节,不可或缺。通过将SIL与持续集成/持续测试(CI/CT)环境相结合,开发团队可在每一次代码提交后自动完成软件模块的功能与性能验证,摆脱传统硬件依赖,显著缩短开发周期、降低验证成本、提升软件迭代效率。

在往期《面向SDV的在环测试深度解析------自动化测试篇》文章中,我们基于SIL KIT中间件,成功构建了集成DYNA4动力学模型、VTD场景仿真与vTESTstudio自动化测试的完整SIL闭环测试环境。那么本期文章我们将进一步探讨该自动化测试方案在云端的部署实践,及其如何与CI/CT流程无缝衔接,赋能更快速的软件迭代周期。

二、CI/CT云端环境搭建

为实现 SIL 测试的自动化、云端化与规模化执行,本方案基于云原生架构搭建统一的 CI/CT 测试环境,以 Kubernetes (K8S)平台完成容器化资源调度与环境编排,构建标准化、可弹性扩展的云端测试底座。

整体环境采用"代码 + 模型 + 配置 + 工具"全托管模式:

  1. 以GitLab作为代码与工程配置托管平台,统一管理测试脚本、仿真模型、总线配置等关键资产
  2. 以Jenkins作为流水线调度引擎,负责构建、部署、测试、报告的全流程自动化编排
  3. 以K8S平台作为 DevOps 管控入口,实现集群资源可视化、任务状态监控与环境生命周期管理。

在仿真层面,方案采用模块化、松耦合架构,各组件通过标准化接口协同工作:

  1. CANoe SE 提供测试脚本执行基础能力
  2. DYNA4 导出面向 Linux 环境的车辆动力学 FMU 模型
  3. vVIRTUALtarget 导出符合 AUTOSAR 标准的 ACC 算法 vECU 模型(.fmu)
  4. SIL KIT承担仿真总线与数据分发核心作用,实现各工具、各模型之间实时的数据交互

运行时,CANoe SE、SIL KIT、FmuImporter 等工具均以容器化方式部署在云端 K8S 集群中,按需调度、弹性扩缩。仿真所需的 rtcfg 工程文件、FMU 模型文件、SIL KIT 配置文件、脚本与参数文件统一纳入 GitLab 版本管理,确保环境可回溯、可复现、可协同,为后续自动化持续集成测试提供稳定可靠的环境基础。

图1 CI/CT环境

三、CI/CT持续集成测试

本文以往期《面向SDV的在环测试深度解析------自动化测试篇》文章中的SIL Demo为例阐述CI/CT全流程。

  1. Docker镜像打包/上传

将用到的工具链打包成Docker镜像后推送至Harbor仓库,包含的镜像有:

  1. CANoe SE程序 + 自动化脚本运行环境
  2. SIL KIT程序 + 运行环境
  3. FMU模型运行环境FmuImporter程序

标准化镜像保证每一次构建与测试都运行在完全一致、可复现的环境中。

图2 Harbor仓库

  1. 代码提交

研发工程师将测试脚本、算法模型、动力学模型、流水线配置等提交至 GitLab,每次Push后Jenkins会自动触发CI Pipeline,主要文件包括:

  1. 自动化测试脚本
  2. 算法模型
  3. 动力学模型
  4. 流水线配置Jenkinsfile文件

图3 GitLab仓库

  1. K8S平台触发Jenkins任务

代码提交后,K8S平台作为统一管控平台自动监测变更,通过内置DevOps工程触发Jenkins流水线:

  1. 自动监测代码变更
  2. 触发Jenkins流水线
  3. 动态分配Kubernetes资源
  4. 自动从Harbor拉取测试镜像

整个资源调度与任务分发过程由K8S平台统一编排,无需人工干预,实现测试环境的按需创建与销毁。

图4 K8S平台流水线任务

  1. CANoe SE自动执行测试

测试环境创建完成后,CANoe SE以命令行模式自动运行vTESTstudio测试脚本:

  1. FmuImporter加载模型文件
  2. SIL KIT建立各模型与工具间的通信
  3. CANoe SE命令行自动执行测试脚本

执行完毕后,测试报告将自动归档至指定存储位置,或通过邮件通知反馈给开发团队,完成CI/CT全流程闭环。

图5 CANoe SE测试结果

四、优点

  1. 开放性:SIL KIT开源中间件生态比较丰富,灵活可扩展,可以兼容SIL测试中各种常用软件ECUTEST、CarMaker、DYNA4、VTD、几乎所有vECU生成软件。
  2. 适应性:适用于所有ECU的SIL测试,可兼容AUTOSAR与非AUTOSAR软件测试,同时支持本地化、公有云和私有云部署。
  3. 云原生:基于 K8S 容器编排技术搭建 CI/CT 云测环境,无缝集成 Harbor、GitLab、GitHub、Jenkins 等工具链,实现环境标准化、弹性调度与自动化测试闭环。

五、

在软件定义汽车时代,软件在环(SIL)测试与持续集成/持续测试(CI/CT)的深度融合已成为加速软件交付、保障质量稳定性的关键路径。该方案消除了硬件依赖,实现了测试环境的弹性调度与可复现性。展望未来,随着云原生技术持续成熟,仿真测试将向深度数字孪生、AI 驱动智能用例生成、全生命周期持续测试方向深度演进。通过将CI/CT流程与研发工具链更紧密地集成,并结合数据驱动的方法优化测试覆盖率和执行效率,汽车软件开发有望实现真正的"测试左移"和更短的反馈周期。Vector工具链也将持续赋能汽车电子研发,助力行业迈向更智能、更高效的验证新阶段。

仿真驱动研发,数据定义体验,闭环验证未来。东信创智将竭力为您提供高效、可靠的智能驾驶XIL测试解决方案,欢迎随时联系我们的团队,或将需求发送至邮箱market@dotrustech.com,了解更多详细信息。

相关推荐
信创DevOps先锋3 小时前
国产CI/CD工具深度评测:安全合规时代的DevSecOps新选择
安全·ci/cd
信创DevOps先锋2 天前
2025年中国CI/CD市场格局:安全与智能并重的技术突围战
安全·ci/cd·gitee·开源
MegaDataFlowers2 天前
基于Gitee Go官方参考设计的远端持续集成验证
ci/cd·gitee
刘~浪地球2 天前
云原生与容器--CI/CD 流水线设计实践
ci/cd·云原生
donecoding3 天前
从零搭建 Monorepo 自动发布工作流(GitHub Actions + pnpm + Lerna)
ci/cd·命令行·前端工程化
X.Ming 同学3 天前
Gemini实战——用AI写CI/CD脚本,效率提升80%
ci/cd
阿正的梦工坊4 天前
一次 Drone CI/CD 落地实战复盘:从“理想方案”到“真正能上线”
ci/cd
xiaotao1316 天前
第二十一章:CI/CD 最佳实践
前端·ci/cd·vite·前端打包
夜珀7 天前
AtomGit CI/CD流水线全解析
ci/cd