组件测试

2013年4月22日

组件测试是一种将测试范围限制在被测系统一部分的测试。它与广栈测试形成对比,广栈测试旨在尽可能多地测试系统。

广栈测试和组件测试之间的区别是程度上的区别,而不是绝对的区别。组件测试可以根据您定义的组件大小而有所不同。区别的本质在于,组件测试故意忽略测试范围之外的系统部分。这通常通过内部代码接口操作系统来完成,使用xunit等测试工具,以及使用测试替身将被测代码与其他组件隔离开来。

组件测试通常比广栈测试更容易编写和维护。它们运行速度也更快,因为它们只命中代码库的一部分。理论上,具有出色组件测试覆盖率的系统应该没有错误,但在实践中,错误喜欢潜伏在组件之间的交互中。因此,最好使用测试金字塔,将大量组件测试与少量广栈测试结合起来。