ISO26262标准之软件单元测试

软件单元测试关注的是软件单元模块是否满足需求规范(不一定都是系统需求)。

在这里的测试,是指动态测试——即在模拟环境中执行软件进行测试。

ISO26262规定了下列动态测试类型

软件动态测试方法

Technique A B C D
Requirement-base test ++ ++ ++ ++
Interface test ++ ++ ++ ++
Fault injection test + + + ++
Resource usage test + + + ++
Back-to-back comparison tests between code and
model(if applicable)
+ + ++ ++

测试用例设计的方法

测试用例的设计是指定使用以下方法

Technique A B C D
Analysis of requirements ++ ++ ++ ++
Generation and analysis of equivalence classes + ++ ++ ++
Analysis of boundary values + ++ ++ ++
Error guessing + + + +

白盒测试度量

为了评估测试用例的完整性并证明没有非预期的功能,ISO26262推荐结构化覆盖(也称为白盒)测试。ISO26262指定了以下覆盖度量方法。

Technique A B C D
Statement coverage ++ ++ + +
Branch coverage + ++ ++ ++
Modified Condition/Decision Coverage(MC/DC) + + + ++
下一节