单元测试:驱动模块与桩模块在自顶向下和自底向上的策略中的作用
考题:
2014年11月第27题
以下关于单元测试的描述中,哪个是正确的?
A 驱动模块用来调用被测模块,自顶向下的单元测试中不需要另外编写驱动模块
B 桩模块用来模拟被测模块所调用的子模块,自顶向下的单元测试中不需要另外编写桩模块
C 驱动模块用来模拟被测模块所调用的子模块,自底向上的单元测试中不需要另外编写驱动
模块
D 桩模块用来调用被测模块,自底向上的单元测试中不需要另外编写桩模块
一、定义
驱动模块与桩模块是实现单元测试和集成测试的工具,而自顶向下和自底向上是组织和执行这些测试的策略。
它们之间的关系是:使用驱动模块和桩模块来实践自顶向下或自底向上的测试策略。
下面我们详细探讨这两种策略如何应用驱动和桩模块。
二、自顶向下(Top-Down)测试
策略思想:
从程序的最顶层、最核心的控制模块(通常是主程序或主界面逻辑)开始测试。然后逐步集成下层模块进行测试。在集成过程中,所有尚未集成的下层模块都用桩模块来替代。
驱动/桩模块的应用:
-
桩模块是核心:在测试顶层模块时,它调用的所有子模块都还不存在,因此需要为每一个子模块编写桩模块。这些桩模块模拟子模块的接口,并返回预定义的假数据,让顶层模块能够运行下去。