1 背景
之前讨论了 为什么要生成测试用例。本文讨论用例生成的基本单元,即“判定”的用例生成。更复杂的逻辑结构的用例生成,仍是以判定为基础的。
针对判定的用例生成虽然是基本单元,但仍可能相当复杂。本文所讨论的实例覆盖如下情况:
(1)判定中包含耦合条件的情况;
(2)判定中包含时序条件的情况;
(3)判定中包含数学计算的情况;
(4)含较大数量条件的情况;
2 基本说明
在条件语句“if A or (B and C) then …”中,逻辑表达式“A or (B and C)”即为一个判定。关于判定、条件、耦合条件及MC/DC的详细讨论,参见“DO-178B及DO-178C中的MC/DC有什么不同?”
本文按照DO-178C规则,对判定进行MC/DC用例生成。
这里讨论的用例可以是面向需求的,因此判定中可能包含时序条件。
本文讨论的判定的表示、分析及用例生成,是基于OneLogic工具进行的。