4、测试环境描述:硬件配置表、软件版本、总线工具、负载箱说明

写测试报告时,很多人喜欢把环境描述写成流水账。什么「用了某某机箱,某某软件」就完了。我个人习惯是,这部分写得越细,后面出问题排查起来就越省力。你想想看,半年后你翻回这份报告,看到「硬件配置:标准机柜」,你还能想起来当时具体用了哪块板卡吗?

4.1 硬件配置表——别只写个型号就完事

硬件配置表是测试环境的骨架。我建议至少包含以下信息:

  • 实时系统:比如 NI PXIe-1085 机箱,搭配 PXIe-8840 控制器
  • IO 板卡:具体到通道数、量程、采样率。例如 PXIe-6363,32 路 AI,16 位分辨率
  • 故障注入单元:比如 Pickering 的 40-190 系列,支持多少通道的开路/短路/对电源对地
  • 程控电源:型号、电压电流范围、纹波指标

一个典型的硬件配置表示例:

设备名称型号关键参数数量
实时控制器PXIe-88402.6 GHz 四核,16 GB RAM1
模拟输入板卡PXIe-636332 通道,±10V,2 MS/s2
故障注入单元40-190-00164 通道,开路/短路/对电源1
程控直流电源EA-PSI 9200-150-200V,0-15A2

我在项目中遇到过一件事:测试报告里只写了「使用 NI 机箱」,结果换了个实验室复现时,发现板卡型号不一样,采样率差了一倍,波形都对不上。嗯,从那以后我要求硬件配置表必须精确到固件版本。

4.2 软件版本——版本号差一位,结果可能天差地别

软件版本这块,很多人觉得差不多就行。其实不然。我见过因为 VeriStand 从 2019 升级到 2020,某个 FPGA 驱动接口变了,整个模型跑不起来。

我建议列出以下软件及其版本:

  • 实时操作系统:比如 NI Linux Real-Time x64 6.0
  • 测试管理软件:比如 NI VeriStand 2021 R3
  • 模型开发工具:比如 MATLAB/Simulink 2022b
  • 编译器:比如 VS2019,或者 GCC 版本
  • 驱动与 API:比如 NI-DAQmx 21.5,NI-XNET 21.0

一个小技巧:我习惯在报告里加一个「软件依赖清单」表格,把每个组件的版本号、安装路径、甚至补丁号都写清楚。这样别人搭建一模一样的环境时,不会因为某个 DLL 版本不对而抓狂。

4.3 总线工具——CAN、LIN、FlexRay 一个都不能少

总线工具是 HIL 测试里最容易出幺蛾子的环节。说白了,你模拟的 ECU 发出来的报文,跟真实总线上的报文能不能对上,全靠它。

我建议描述清楚:

  • 硬件接口:比如 Vector VN1640A,或者 NI PXI-8516
  • 总线类型与通道数:2 路 CAN FD,1 路 LIN,1 路 FlexRay
  • 配置工具:比如 Vector CANoe 15.0,或者 NI-XNET 配置工具
  • 数据库文件:DBC 文件版本、LDF 文件版本、FIBEX 文件版本

我曾经遇到过一个坑:测试报告里只写了「使用 CANoe 进行总线监控」,但没写 DBC 文件的版本。后来发现,同一个信号在不同版本的 DBC 里,起始位定义不一样。结果测试结论完全反了。所以我现在要求,DBC 文件的 MD5 校验值也要写进报告。

注意:总线工具的固件版本也很关键。比如 VN1640A 的固件从 3.0 升级到 3.1 后,CAN FD 的采样点计算方式变了。如果你不写固件版本,别人用不同固件跑出来的结果可能不一致。

4.4 负载箱说明——别小看这个铁疙瘩

负载箱,说白了就是模拟真实负载的电阻箱或者电子负载。很多人觉得它就是个电阻,没什么好写的。但我在项目中遇到过,因为负载箱的功率不够,导致测试时电压跌落,误判为 ECU 输出异常。

我建议负载箱说明包含:

  • 类型:是纯电阻负载箱,还是可编程电子负载
  • 功率与阻值范围:比如 0-500W,0.1Ω-100kΩ
  • 通道数:每个通道独立还是共地
  • 控制方式:手动旋钮,还是通过 CAN/以太网远程控制
  • 校准日期:负载箱的精度会随时间漂移,校准记录很重要

一个负载箱配置示例:

参数
型号IT8512A+
类型可编程直流电子负载
功率300W
电压范围0-150V
电流范围0-30A
控制接口RS232 / 以太网
最近校准日期2024-06-15

嗯,这里还要提一句:如果你用的是自制的负载箱,一定要把电路原理图或者接线图附在报告附录里。不然别人根本不知道你那个电阻箱里到底是怎么接的。

4.5 环境描述的几个常见坑

最后,我总结几个写环境描述时容易踩的坑:

  • 只写品牌不写型号——比如「使用 NI 板卡」,但 NI 有几百种板卡,谁知道你用的哪个
  • 软件版本只写大版本——比如「VeriStand 2021」,但 2021 有 R1、R2、R3,每个版本的 bug 都不一样
  • 忽略线束信息——线束长度、屏蔽方式、接地方式,这些在高频信号测试里影响很大
  • 不写环境条件——温度、湿度、供电质量,这些也会影响测试结果

我的个人习惯:每次搭建完测试环境,先拍一张全景照片,把每个设备的标签都拍清楚。然后写环境描述时,对着照片写,基本不会漏东西。这张照片也可以附在报告附录里,比文字描述直观多了。

好了,测试环境描述这部分,说白了就是「把话说清楚,把事做细致」。你写得越详细,后面的人(包括几个月后的你自己)就越省心。下一章我们聊聊测试用例的设计,那个才是真正考验功力的地方。