什么是模块测试?
模块测试被定义为一种软件测试类型,检查程序中的各个子程序、子例程、类或过程。模块测试建议测试程序的较小构建块,而不是一次测试整个软件程序。
模块测试在很大程度上是面向白盒的。进行模块测试的目的不是为了证明模块功能正常,而是为了证明模块中存在错误。
模块级测试通过提供同时测试多个模块的机会,允许在测试过程中实现并行性。
为什么要进行模块测试
建议使用模块测试,因为
- 在较小的程序块上识别错误或错误的概率变得更高
- 可以同时测试多个模块,因此支持并行测试
- 可以轻松管理测试的复杂性
如何进行模块测试?
-
对于模块测试来说,设计测试用例是一个重要的环节。在为模块测试设计测试用例时,测试人员必须考虑两件事。
- 模块规范
- 模块的源代码
- 通过使用一个或多个白盒方法分析模块的逻辑,然后通过将黑盒方法应用于模块规范来补充这些测试用例
- 一旦设计好测试用例,下一步就是组合模块进行测试。使用的方法可以是增量方法,也可以是非增量方法。
- 非增量式方法-所有模块都独立测试。首先对各个模块进行组合,然后对整个程序进行测试
- 增量式方法-首先测试每个模块,然后逐渐递增到测试的集合。它会一步一步地重新测试
- 增量测试有两种方法-自上而下和自下而上测试
- 要使用所选数据执行模块,需要驱动程序来提供测试数据、监视执行和捕获结果
模块测试的示例提示
以下是在执行模块测试之前需要考虑的一些提示。
- 在使用之前检查测试用例
- 避免在差异来源上使用念力
- 使用自动化测试工具
- 检查应保持不变的变量
- 要避免自检,更换模块
- 重用测试用例
单元测试与模块测试
模块测试 | 单元测试 |
---|---|
模块测试是测试人员在开发人员编写了一些代码后编写的测试的集合 | 单元测试是由开发人员在软件开发过程中编写的测试的集合 |
模块测试可能涉及组合单元测试 | 单元测试可能是孤立地测试单元 |
模块测试中的挑战
现在我们来看看模块测试中面临的最大挑战
- 非增量测试需要更多工作
- 对测试替身的误解
- 经常进行调试测试
- 需要理解代码
总结:
- 在软件工程中,模块测试(单元测试)是测试程序中的各个子程序、子例程、类或过程的过程
- 模块测试的优点是在较小的程序块上识别错误或错误的概率变得更高
- 对于模块测试,使用的方法可以是增量方法,也可以是非增量方法。