在实际测试过程中可能包括大量函数,不可能对所有的函数进行单元测试,所以如何选择单元 测试策略是很重要的,选择不同的测试策略所花费的时间开销和带来的效果是不一样的。一般的单 元测试策略有三种:孤立的单元测试策略(Isolation Unit Testing)、自顶向下的单元测试策略(Top Down Unit Testing)和自底向上的单元测试策略(Bottom Up Unit Testing)。 (1)孤立的单元测试策略不考虑每个模块与其他模块之间的关系,为每个模块设计桩模块和 驱动模块,每个模块进行独立的单元测试。
(2)自顶向下的单元测试策略先对最顶层的单元进行测试,把顶层所调用的单元做成桩模块。 接着对第二层进行测试,使用上面已测试的单元做驱动模块,依此类推,直到测试完所有模块。自 顶向下的单元测试策略过程如图 10-3 所示。
(3)自底向上的单元测试策略先对模块调用层次图上最底层的模块进行单元测试,模拟调用 该模块的模块做驱动模块,然后再对上面一层做单元测试,用下面已被测试过的模块做桩模块。依 此类推,直到测试完所有模块。自底向上的单元测试策略过程如图 10-4 所示。
这三种策略各有优缺点,见表 10-1,具体的策略选择可以依据实际测试情况进行。