基于规模化HIL测试集群的CICD方案
前言
汽车行业的开发模式正经历前所未有的变革,软件功能的复杂度激增、OTA更新频率提升、用户体验需求多样化……传统的“开发-测试-交付”流程正在变得捉襟见肘。面对这些挑战,CICD(持续集成/持续部署)作为敏捷开发的核心支撑,越来越多地被引入汽车研发流程,尤其是在造车新势力中已成标配。
然而,汽车不是一部手机,软件功能是否“真能跑得起来”,必须通过真实硬件环境验证。这就引出了一个关键命题:汽车行业如何将CICD扩展到硬件层面,真正形成从代码到实车验证的闭环?
本文将围绕“基于规模化HIL台架的CICD测试方案”展开,探讨其在汽车研发体系中的价值、落地思路、关键挑战与进阶方向。希望为致力于构建高效测试体系的团队,提供一份可操作的技术参考。
1 CICD:从互联网迁移到智能汽车
CICD的概念最早在互联网行业中落地,用以解决高频次迭代与质量保障之间的矛盾。持续集成(CI)确保每次代码提交都能被自动构建与验证,持续部署(CD)则确保通过验证的软件可以自动部署到运行环境中。
这种机制已经被特斯拉等头部车企验证。详见我之前写过的一篇文章,写在懂车帝辅助驾驶测试之后——50%汽车人都在拒绝敏捷开发,我们在拒绝什么? 特斯拉在10天之内,对其Model 3进行了OTA,从而缩短了其刹车距离,让“消费者报告”将其从“不推荐”改为“推荐”。这并不是因为特斯拉有更多的人力,而是因为他们拥有更快的反馈闭环:以CICD为核心驱动的快速迭代体系。
2 为什么HIL是汽车CICD的关键
在传统的软件行业,验证代码是否生效,只需跑完单元测试、集成测试、UI测试即可。但在汽车行业,这还远远不够。
智能座舱、自动驾驶、动力控制……这些系统都和硬件深度耦合。即使代码层面没有bug,也可能因为CAN帧响应慢、传感器读数异常等原因导致实际功能失效。因此,只有在真实或模拟硬件环境中验证,才能判定软件是否可交付。
这便是HIL(Hardware-in-the-Loop)技术的意义——它通过模拟车辆硬件与外部环境,使控制器在“拟真”环境下运行,实现对ECU功能的系统性验证。
然而问题在于:
-
HIL台架资源昂贵,一套动辄数十万
-
多人并发开发时,提交代码的频率显著提高,测试请求激增,排队现象严重
-
测试台架部署分散,忙的台架-在特定功能开发期间,24小时连轴转仍无法满足需求。闲的台架-由于当前阶段不涉及相关功能,完全闲置
-
测试结果与V模型左侧文档缺乏可追溯性,无法真正形成闭环
于是,我们需要一个更先进的解决方案。
3 中央调度+HIL测试集群+自动追溯的CICD体系
为了破解这些挑战,我们构建了一个三层架构的测试体系:中央调度系统 + HIL测试集群 + 追溯增强的ALM系统。
它的架构图如下:
它具备如下几个关键能力:
1. 中央调度系统:实现资源的最优分配
中央调度系统负责管理所有测试资源,包括:
-
每个HIL台架的配置、状态、软件版本
-
当前队列中待测试的任务
-
各类测试工具(如Polartest、CANoe、ECU-TEST、Python脚本)的分布
当开发者触发CI流程(如提交代码或Merge Request)或手动触发时,系统自动:
-
分析测试任务所需资源
-
调用合适的台架
-
安装待测软件包
-
启动测试工具运行用例
调度系统还能动态分配任务负载,实现自动负载均衡,确保台架不空转也不拥堵。
2. 测试集群:从单点部署到弹性测试
测试集群由多个HIL台架组成,每个台架包含:
-
测试PC(搭载测试软件,如Polartest)
-
测试板
-
I/O接口
通过统一调度,这些台架从“局部服务”变成“共享资源池”,极大提升资源利用率。
3. ALM:构建测试结果与需求的闭环
传统测试报告常常只回答一个问题:通过还是失败?
但在整车V模型的背景下,我们更关心:
-
这个失败用例对应哪个需求?
-
哪些架构块受影响?
-
这次测试计划,是否完整覆盖所有关键需求?
为此,中央调度系统进一步将测试报告送到MappingSpace ALM,实现:
-
自动解析测试结果
-
自动关联需求、架构、设计信息
-
生成可视化测试覆盖度报告
-
点击测试结果,直接跳转至需求详情
这使得测试报告不再是一个孤立的、静态的PDF或者html文件,而是一个动态的、可交互的、可追溯、闭环的数字资产。
4 实战启示:如何从0到1构建这样的体系?
-
从“小而精”的台架做起
不需要一开始就上百个台架。先选取关键子系统(如泊车、HMI交互),搭建1-2个自动化台架跑通流程,再逐步扩展。
-
调度系统优先构建
优先建设中央调度系统,确保流程打通,再逐步接入不同厂商/工具链的测试节点。 -
ALM追溯能力要“插针”式接入
不改变原有文档和工具,采用API实现文档的解析与跳转。 -
数据驱动优化
建立用例执行日志、失败原因统计、资源使用情况分析,从而动态优化测试策略与台架配置。
作者介绍:
罗宇超,云体科技创始人,前蔚来汽车软件质量工程师,工具链工程师。