4. 任务模式与状态转换测试需求分析
任务模式与状态转换测试的需求分析,本质上是把三类文档中的“任务意图”翻译成“可执行、可判定、可追溯的测试需求”。这三类文档分别是任务书、飞行程序和故障预案。任务书回答“航天器要完成什么任务、在什么约束下完成”;飞行程序回答“正常飞行时按什么时序、什么条件进入和退出各模式”;故障预案回答“异常时如何检测、如何切换、如何恢复”。测试需求分析的目标,就是让每一条测试需求都能追溯到上述文档中的具体条款,并且能用明确的覆盖准则判断测试是否充分。
一、三类文档各自能提取什么
任务书通常给出任务阶段划分、模式定义、关键性能指标和约束条件。例如某遥感卫星任务书规定:发射后第 3 圈完成太阳翼展开,第 5 圈进入对地成像模式,成像期间姿态稳定度优于 0.005°/s,数传模式在成像结束后 2 分钟内建立。从这些条款中可提取的测试需求包括:模式进入条件测试、模式保持能力测试、模式间转换时序测试、性能指标验证测试。任务书中的“优于”“不超过”“在……之内”等表述,必须转化为带数值门限的判定条件,否则无法执行。
飞行程序是模式转换逻辑最密集的来源。它一般以时间轴或事件驱动的方式描述:在什么轨道位置、什么遥测状态、什么地面指令下,执行哪个模式切换。例如“当星箭分离信号有效且太阳翼展开到位信号为 1 后,延时 30 秒进入安全模式;当蓄电池电压高于 28.5 V 且太阳翼输出电流大于 2 A 时,转出安全模式进入正常模式”。这类条款直接对应状态转换测试中的“迁移条件”和“迁移动作”。提取时要特别关注三类信息:迁移的触发源(遥控指令、程控指令、自主判据)、迁移的守卫条件(电压、电流、温度、姿态、时间)、迁移后的预期状态(模式标识、关键遥测、执行机构状态)。
故障预案则提供异常路径的测试需求。它通常按故障树或故障模式组织,列出故障检测方法、隔离措施、重构策略和恢复条件。例如“若陀螺 A 输出超差持续 200 ms,则切换至陀螺 B,并将姿态控制模式由高精度模式降为粗略模式;若陀螺 B 也失效,则进入安全模式并等待地面指令”。从故障预案中提取的测试需求,重点不在正常迁移,而在故障注入后的检测时延、切换正确性、降级后功能可用性以及恢复路径的可达性。
二、从条款到测试需求的转化方法
提取测试需求时,建议采用“条款拆解—条件识别—判据量化—观测点绑定”四步法。以飞行程序中“当蓄电池电压高于 28.5 V 且太阳翼输出电流大于 2 A 时,转出安全模式进入正常模式”为例:第一步拆解出迁移条件为电压和电流两个守卫条件,迁移动作为模式切换;第二步识别出这两个条件是与关系,且存在边界值 28.5 V 和 2 A;第三步将“高于”“大于”量化为“≥ 28.5 V”“≥ 2 A”,并补充边界测试点 28.4 V、28.5 V、28.6 V 和 1.9 A、2.0 A、2.1 A;第四步绑定观测点为蓄电池电压遥测、太阳翼电流遥测和模式标识遥测,判定条件为切换后 1 秒内模式标识变为正常模式。这样一条测试需求就具备了可执行性。
对于故障预案,转化重点在于故障注入方式和检测时延。例如“陀螺 A 输出超差持续 200 ms 则切换至陀螺 B”,测试需求应明确:注入方式为在陀螺 A 遥测通道叠加超差偏置,注入时刻为姿态稳定阶段,检测时延判据为从注入开始到模式标识切换不超过 200 ms 加一个控制周期,切换后需确认陀螺 B 数据有效且姿态误差未发散。若预案中只写了“超差”,必须补充超差的具体门限和持续时间,否则测试无法判定。
三、需求追踪矩阵的建立
需求追踪矩阵(RTM)是需求分析的核心交付物。它至少应包含以下字段:测试需求编号、需求描述、来源文档及条款号、验证方法、覆盖准则、对应测试用例编号、观测遥测点、通过判据、当前状态。建立时遵循“双向追踪”原则:正向从文档条款追踪到测试需求,确保没有遗漏;反向从测试需求追踪回文档条款,确保没有凭空捏造。对于任务书中的性能指标,验证方法通常为“测试”或“分析”;对于模式转换逻辑,验证方法通常为“测试”或“演示”;对于故障预案中的恢复路径,验证方法通常为“测试”或“演示”加“分析”。
以下是一个可直接参考的 RTM 示例片段,字段和内容均属于教学示例,实际项目应按任务书和飞行程序的具体条款替换。
| 测试需求编号 | 需求描述 | 来源条款 | 验证方法 | 覆盖准则 | 观测遥测 | 通过判据 |
|---|---|---|---|---|---|---|
| TR-MODE-001 | 星箭分离后 30 s 内进入安全模式 | 飞行程序 §3.2.1 | 测试 | 迁移覆盖 | 模式标识、分离信号 | t ≤ 30 s 且模式标识=安全 |
| TR-MODE-002 | 电压≥28.5 V 且电流≥2 A 时转正常模式 | 飞行程序 §3.2.4 | 测试 | 守卫条件边界覆盖 | 蓄电池电压、太阳翼电流、模式标识 | 切换后 1 s 内模式标识=正常 |
| TR-FAULT-003 | 陀螺 A 超差 200 ms 内切至陀螺 B | 故障预案 §5.1.2 | 测试 | 故障路径覆盖 | 陀螺 A/B 输出、模式标识 | 切换时延 ≤ 200 ms+1 控制周期 |
| TR-PERF-004 | 成像模式姿态稳定度 ≤ 0.005°/s | 任务书 §4.3 | 测试/分析 | 状态覆盖 | 姿态角速度遥测 | 稳定段 60 s 内均方根 ≤ 0.005°/s |
| TR-REC-005 | 双陀螺失效后安全模式可恢复 | 故障预案 §5.1.5 | 演示/分析 | 故障路径覆盖 | 模式标识、地面指令回执 | 地面指令后 5 s 内模式标识=安全 |
四、覆盖准则的选择与判定
覆盖准则决定测试的充分性。对于任务模式与状态转换测试,常用的覆盖准则包括:状态覆盖,即每个模式至少被进入一次;迁移覆盖,即每条正常迁移至少被执行一次;迁移对覆盖,即每对相邻迁移至少被执行一次,用于发现迁移间的耦合问题;守卫条件边界覆盖,即每个守卫条件的边界值、边界内和边界外均被测试;故障路径覆盖,即每条故障检测、隔离、重构和恢复路径至少被执行一次。选择准则时,应根据任务书中的关键指标和故障预案中的高风险故障确定优先级。例如,安全模式进入和退出属于高优先级,必须做到迁移对覆盖;姿态稳定度属于性能指标,至少做到状态覆盖加边界覆盖。
五、常见问题与检查要点
需求分析中最常见的问题是“条款遗漏”和“判据模糊”。条款遗漏往往发生在故障预案的恢复路径和任务书的约束条件中,例如“成像期间数传关闭”这类约束容易被忽略。判据模糊则表现为“正常切换”“稳定后”“及时恢复”等定性描述,必须转化为数值门限和时间窗口。另一个常见问题是观测点未绑定,导致测试执行时不知道看哪个遥测。检查时可用以下清单快速核对:每条测试需求是否有唯一编号;是否追溯到具体文档条款;是否有明确的验证方法;是否绑定了至少一个观测遥测;是否有可判定的通过判据;是否映射到至少一种覆盖准则;未覆盖项是否有风险接受说明。
完成需求分析后,RTM 应作为后续测试用例设计和测试执行的基础。测试用例编号与需求编号的对应关系应在整个测试过程中保持稳定,任何需求变更都应同步更新 RTM 和覆盖分析结果。这样,任务模式与状态转换测试才能做到“需求有来源、测试有依据、覆盖有判据、结果可追溯”。