4、硬件测试计划与用例设计:测试策略、测试级别(单元、集成、系统)、用例编写方法(等价类、边界值、场景法)
仿人机器人硬件测试是保障整机可靠性、安全性与功能完备性的关键环节。硬件测试并非简单“通电看现象”,而是需要依据系统需求、接口协议、电气特性和机械结构约束,制定分层递进的测试策略,并在不同测试级别上设计可追溯、可复现、可判定的测试用例。本章围绕测试策略的制定、单元/集成/系统三级测试的划分,以及等价类、边界值、场景法三种核心用例设计方法展开,结合仿人机器人关节模组、主控板、传感器融合单元等典型硬件对象,给出可落地的工程化指导。
4.1 测试策略:从需求风险到资源分配的决策框架
核心原理
测试策略是硬件测试计划的顶层设计,其本质是在有限的时间、设备和人力约束下,将测试资源优先投入到风险最高的需求域。仿人机器人硬件涉及电机驱动、传感器采集、通信总线、电源管理、安全保护等多个子系统,不同模块的失效后果差异巨大——例如关节电机驱动板的过流保护失效可能导致机械臂伤人,而指示灯驱动故障仅影响用户体验。因此,测试策略必须基于失效模式与影响分析(FMEA)结果,对高风险项实施更严格的测试深度和更宽的覆盖维度。
判断方法或操作流程
制定测试策略可遵循以下五步流程:
- 需求风险分级:将硬件需求按“失效后果严重度×发生概率”矩阵分为A/B/C三级。A级(如安全保护、动力电源)需100%覆盖并增加冗余测试;B级(如通信接口、传感器精度)需重点覆盖;C级(如指示灯、调试接口)做常规覆盖。
- 测试环境约束分析:明确实验室环境、半实物仿真台架、整机测试场地的可用性,以及是否需要定制工装(如关节加载台、散热风道模拟器)。
- 通过/失败判据定义:每个测试项必须预先定义量化指标,例如“电源纹波≤50mVpp”“I2C通信误码率≤1e-6”“关节角度误差≤0.1°”。
- 回归策略确定:根据硬件版本变更范围,确定全量回归、冒烟回归或定向回归的触发条件。
- 资源与进度平衡:绘制测试活动甘特图,识别关键路径,必要时采用并行测试或自动化测试脚本提升效率。
| 风险等级 | 典型硬件对象 | 测试深度 | 测试方法侧重 | 允许残留缺陷 |
|---|---|---|---|---|
| A级 | 电机驱动板、电池保护电路、急停逻辑 | 全参数+极限+故障注入 | 边界值+场景法+长时间老化 | 零容忍 |
| B级 | IMU传感器、CAN总线、电源模块 | 全参数+典型场景 | 等价类+边界值+场景法 | ≤1个低严重度缺陷 |
| C级 | LED指示、调试串口、拨码开关 | 功能验证+基本参数 | 等价类+冒烟测试 | 允许记录但需评审 |
案例拆解:关节模组驱动板测试策略制定
某仿人机器人膝关节模组采用“无框力矩电机+谐波减速器+双编码器+驱动板”一体化设计。初始测试策略将所有项目均按B级处理,导致测试周期长达6周。后引入FMEA分析发现:驱动板MOSFET桥臂直通短路会导致电机堵转并烧毁减速器,属于A级风险;而编码器温度漂移属于B级风险。调整后策略为:对MOSFET驱动时序做100%边界值测试(覆盖死区时间上下限),并增加过流保护触发场景测试;对编码器则采用等价类划分(-10℃~50℃范围内每10℃取一个代表值)进行精度验证。最终测试周期压缩至3.5周,且未降低关键安全项覆盖。
常见误区或总结复盘
- 误区一:所有测试项平均用力,导致高风险项覆盖不足而低风险项过度测试。
- 误区二:忽略测试工装本身的误差对测试结果的影响,例如使用普通万用表测量高速差分信号。
- 误区三:通过/失败判据定义模糊,如“通信正常”未明确误码率或丢包率阈值。
复盘要点:测试策略应形成闭环——每次测试执行后,将实际发现的缺陷分布与风险矩阵对比,验证策略的准确性,并持续修正。
4.2 测试级别:单元、集成、系统的递进逻辑
核心原理
三级测试体系遵循“由小到大、由内到外、逐层集成”的V模型思想。单元测试聚焦于最小可测试硬件单元(单板、模组),验证其电气特性和功能逻辑;集成测试关注模组之间的接口、时序和信号交互;系统测试在整机层面验证需求符合性、安全性和环境适应性。每一级别都有独立的测试目标、环境要求和缺陷定位策略,不能相互替代。
判断方法或操作流程
单元测试(板级/模组级):在硬件模组独立供电条件下,使用示波器、万用表、逻辑分析仪、可编程负载等设备,验证以下内容:
- 电源上电时序(如先核电压后IO电压,间隔需满足规格书要求)
- 时钟信号频率、幅度、上升/下降时间
- 复位信号释放时间与毛刺检测
- 通信接口(I2C/SPI/UART)读写时序与ACK响应
- ADC/DAC的零点、满量程、线性度、单调性
- GPIO输入/输出逻辑电平与驱动能力
集成测试(接口/子系统级):将多个已通过单元测试的模组连接成子系统,重点验证:
- 模组间信号完整性(眼图、串扰、反射)
- 电源域负载调整率与动态响应
- 总线仲裁与多主设备竞争
- 握手协议时序(如SPI的CS/CLK/MISO配合)
- 故障注入后的降级或保护行为
系统测试(整机/场景级):在完整仿人机器人或高保真台架上执行:
- 整机功能遍历(行走、抓取、视觉识别联动)
- 性能指标(关节最大扭矩、末端定位精度、连续运行时间)
- 热管理(满载温升、散热风扇调速逻辑)
- 安全机制(碰撞检测、急停响应时间)
- 环境适应性(高低温、湿度、振动)
案例拆解:主控板与传感器集线器集成测试
主控板(基于i.MX8M Plus)通过I2C总线连接传感器集线器(管理6个IMU和4个超声波传感器)。单元测试阶段,主控板I2C控制器读写正常,集线器单独供电时各传感器数据正确。集成测试时发现:当6个IMU同时以400kHz速率上报数据时,总线出现周期性CRC错误。通过逻辑分析仪抓取波形,发现SCL低电平时间被拉长至规范值的1.8倍,原因是集线器板上I2C上拉电阻(4.7kΩ)与主控板内部上拉(2.2kΩ)并联后总阻值过小,导致上升沿过冲触发误判。解决方案:将集线器上拉电阻改为10kΩ,并增加RC滤波(100Ω+100pF)。此问题在单元测试阶段无法暴露,因为单板测试时总线负载较轻。
常见误区或总结复盘
- 误区一:将系统测试发现的问题直接归因于某个模组,而忽略接口时序或负载效应。
- 误区二:集成测试环境与最终整机环境差异过大(如使用短飞线代替实际线束),导致信号完整性结论失真。
- 误区三:单元测试用例数量不足,仅验证“正常功能”而忽略“异常输入”和“极限参数”。
总结:三级测试应形成“金字塔”结构——单元测试数量最多、执行最快;集成测试居中;系统测试数量最少但成本最高。合理分配各级测试比例(建议6:3:1)可有效控制总测试成本。
4.3 用例编写方法:等价类、边界值、场景法的工程应用
核心原理
硬件测试用例设计的核心目标是用最少的测试输入覆盖最大的有效输入空间,同时不遗漏关键异常路径。等价类划分将输入域划分为若干互不相交的子集,每个子集中的任意值对测试结果等效;边界值分析则针对等价类边界及其附近的值设计用例,因为大量硬件缺陷集中在边界附近(如电源电压上限、时钟频率下限、温度阈值);场景法从用户或系统操作流程出发,覆盖正常路径、备选路径和异常路径,特别适合验证硬件状态机转换和故障恢复逻辑。
判断方法或操作流程
等价类划分步骤:
- 识别输入条件(电压、电流、频率、温度、寄存器配置值等)
- 划分有效等价类(符合规格书要求)和无效等价类(超出规格或非法组合)
- 为每个等价类分配唯一编号,并选取代表性值
- 确保每个等价类至少有一个测试用例覆盖
边界值分析步骤:
- 确定每个输入条件的边界值(最小值、最大值、略小于最小值、略大于最大值)
- 对于离散值(如寄存器地址),关注最小/最大索引及±1
- 对于连续值(如电压),关注规格上下限及±5%容差
- 将边界值用例与等价类用例合并,去除重复
场景法设计步骤:
- 绘制硬件操作的状态流图(如待机→启动→运行→故障→保护→恢复)
- 识别基本流(正常操作路径)和备选流(异常分支)
- 为每个场景定义前置条件、输入动作、预期结果
- 特别关注状态转换的触发条件和超时机制
| 方法 | 适用对象 | 典型用例示例 | 优势 | 局限 |
|---|---|---|---|---|
| 等价类 | 电源电压范围、温度范围、通信速率档位 | 供电电压:有效类12V±5%,无效类5V/20V | 覆盖全面、用例数量可控 | 无法发现边界附近缺陷 |
| 边界值 | ADC满量程、PWM占空比、看门狗超时值 | PWM占空比:0%、1%、99%、100% | 针对性强、缺陷检出率高 | 需先明确边界定义 |
| 场景法 | 上电/掉电时序、急停触发、通信中断恢复 | 运行中拔出通信线→系统应进入安全状态→重新插入后自动恢复 | 贴近实际使用、验证状态机 | 用例设计耗时较长 |
案例拆解:电池管理单元(BMU)用例设计
某仿人机器人采用48V/20Ah锂电池组,BMU需监测电压、电流、温度并执行过充、过放、过流、短路保护。测试目标为验证保护功能的准确性和响应时间。
等价类划分:
- 电压:有效充电范围42V-54.6V,无效过充>54.6V,无效欠压<36V
- 电流:有效放电0-30A,无效过流30-50A,短路>50A
- 温度:有效-20℃~55℃,无效高温>60℃,无效低温<-30℃
边界值用例:
- 充电电压54.5V(正常)、54.7V(应触发过充保护)
- 放电电流29.8A(正常)、30.2A(应触发过流保护)
- 温度55℃(正常)、60.5℃(应触发高温保护)
场景法用例:
- 场景1:正常行走放电→电量降至20%→系统提示低电量→继续放电至10%→BMU切断输出
- 场景2:充电过程中拔掉充电器→重新插入→充电继续(验证充电状态机恢复)
- 场景3:运行中电机堵转导致电流突增至45A→BMU应在500ms内切断MOSFET→重新上电后需手动复位才能恢复
执行结果:边界值测试发现过流保护阈值实际触发点为31.2A(设计值为30A±2%),超出规格上限。经分析为采样电阻温漂导致,更换低温漂电阻后阈值稳定在30.1A。场景3测试发现保护响应时间为380ms,满足≤500ms要求,但恢复逻辑存在缺陷——需断电重启而非仅复位信号,已提交设计变更。
常见误区或总结复盘
- 误区一:等价类划分时遗漏无效类,例如只测试正常电压范围,未测试反接、过压、欠压。
- 误区二:边界值选取过于宽松,如将“略大于最大值”定义为+10%而非+1%,导致缺陷漏检。
- 误区三:场景法用例只覆盖基本流,忽略异常恢复路径,如通信中断后的重连机制。
复盘要点:用例设计完成后应进行同行评审,重点检查等价类是否完备、边界值是否精确、场景是否覆盖关键状态转换。建议建立用例与需求的追溯矩阵,确保每条硬件需求至少被一个用例覆盖。