1. 航电计算平台自动化测试导论
航电计算平台是飞机上承载飞行控制、任务管理、显示告警、数据通信等关键功能的计算核心。它通常由通用处理模块、I/O 接口模块、存储模块、电源模块、背板总线以及驻留其上的实时操作系统和应用软件组成。与普通计算机不同,航电计算平台必须满足严格的实时性、确定性和适航安全性要求,任何一次计算延迟或数据错误都可能影响飞行安全。因此,理解它的组成与分类,是开展自动化测试的前提。
从组成上看,航电计算平台可以划分为硬件层、系统软件层和应用功能层。硬件层包括处理器板卡、总线接口、离散量/模拟量采集电路等;系统软件层包括实时操作系统、健康监控、分区管理;应用功能层则运行具体的飞行功能软件。按架构分类,常见的有集中式、 federated(联合式)和综合模块化航电(IMA)三类。集中式由一台核心计算机完成多数计算;联合式按功能分散为多个独立 LRU;IMA 则通过共享计算资源和分区机制,把多个功能集成到同一平台。不同架构的测试重点差异明显:集中式关注单点性能与余度切换,联合式关注接口一致性,IMA 则必须验证分区隔离与资源分配。
自动化测试的范畴通常覆盖四个层面:接口测试、功能测试、性能测试和故障注入测试。接口测试验证 ARINC 429、AFDX、CAN、离散量等总线的数据格式与时序;功能测试验证计算逻辑、状态迁移和输出响应;性能测试关注周期抖动、吞吐量、CPU 与内存占用;故障注入则模拟断线、误码、超时、电源跌落等异常,检验平台的容错与重构能力。以 AFDX 接口为例,一个典型的自动化用例会构造虚拟链路 VL=100,设定 BAG=8ms,发送 128 字节载荷,并检查接收端在 8ms 周期内的到达抖动是否小于 500μs。若抖动超限,则判定该链路实时性不满足要求。
自动化测试的价值体现在三个方面:一是提升回归效率,当软件版本迭代时,数千条用例可在夜间自动执行;二是提高判定一致性,避免人工读数带来的主观误差;三是支持故障复现,通过脚本精确重放异常场景。但它也面临挑战:航电接口种类多、协议封闭,测试设备成本高;实时性测试对时间同步要求达到微秒级;部分安全关键功能不允许直接注入故障,只能通过仿真环境间接验证。此外,测试脚本本身也需要版本管理和评审,否则会引入新的不确定性。
课程整体学习路径按“先认识对象、再掌握手段、最后完成工程闭环”展开。第一阶段理解航电计算平台的组成、分类与典型接口;第二阶段学习自动化测试框架的搭建,包括测试脚本、激励设备、采集设备和判定逻辑;第三阶段进入工程实践,围绕真实或半实物的航电平台,完成接口测试、功能回归、性能测量和故障注入,并输出可追溯的测试报告。工程实践目标不是“跑通一个脚本”,而是能够独立设计一条覆盖需求、可重复执行、结果可判定的自动化测试链路。
为了便于后续章节对照,这里给出一个简化的测试用例参数示例。假设被测平台通过 AFDX 接收飞行参数,测试脚本需要验证在正常和异常两种条件下的输出。正常条件下,发送端以 8ms 周期发送 128 字节数据,接收端应在 8ms 内完成解析并更新显示变量;异常条件下,注入 1% 误码率,平台应在 3 个周期内检测到校验失败并切换到备份链路。判定依据是:正常时延小于 8ms,异常切换时间小于 24ms。这类参数化用例是后续自动化框架的基本单元。
用例编号:AFDX-IF-001
接口类型:AFDX
虚拟链路:VL=100
BAG:8 ms
载荷:128 Byte
正常判定:接收时延 < 8 ms,抖动 < 500 μs
异常注入:误码率 1%
异常判定:3 个周期内切换备份链路,切换时间 < 24 ms
需要特别注意的是,航电计算平台的自动化测试与普通软件测试存在本质区别。普通软件测试可以频繁重启、随意修改环境,而航电平台往往运行在实时操作系统上,分区之间相互隔离,测试激励必须严格符合总线协议和时序约束。例如 ARINC 429 的字格式为 32 位,包含标签、源/目的标识、数据和奇偶校验,若脚本发送的标签错误,平台可能直接丢弃而不产生任何响应。因此,自动化测试的第一步不是写脚本,而是确认被测接口的协议参数、电气特性和判定阈值。