什么是组件测试?
组件测试被定义为一种软件测试类型,即单独对每个组件进行测试,而不与其他组件集成。组件测试也称为单元测试、程序测试或模块测试。
一般来说,任何软件作为一个整体都是由几个组件组成的。组件级别测试处理单独测试这些组件。
这是QA团队执行的最常见的黑盒测试类型之一。
如下图所示,将有组件测试的测试策略和测试计划。将为每个组件定义一个测试场景,该场景将进一步细化为高级测试用例->具有先决条件的低级详细测试用例。
术语“组件测试”的用法因域和组织的不同而不同。
对组件测试看法不同的最常见原因是
- 选择的开发生命周期模型类型
- 被测软件或应用程序的复杂性
- 测试软件或应用程序中的其他组件是否与睡觉隔离。
众所周知,软件测试生命周期体系结构有很多测试工件(在测试活动期间制作和使用的文档)。在许多测试工件中,测试策略和测试策略定义了在给定项目中要执行的测试类型和测试深度。
谁来做组件测试
组件测试由测试人员执行。“单元测试”是由开发人员执行的,在执行完单元测试之后,下一个测试是组件测试。组件测试由测试人员完成。
何时执行组件测试
组件测试是在开发人员完成单元测试并为测试团队发布构建之后立即执行的。在此阶段测试所有组件的主要功能,
组件测试的入门标准
- 应开发包含在UT中的最小数量的部件并进行单元测试。
组件测试的退出标准
- 所有组件的功能都应该工作正常。
- 不应存在任何严重、高或中优先级缺陷缺陷日志。
组件测试技术
根据测试级别的深度,组件测试可以分类为
- CTIS.小型部件测试
- CTIL-大型组件测试
CTIS.小型部件测试
组件测试可以在隔离或不隔离被测软件或应用程序中的其他组件的情况下进行。如果它是在隔离其他组件的情况下执行的,那么它在Small中称为组件测试。
示例1:假设一个网站有5个不同的网页,然后分别测试每个网页&隔离其他组件称为组件测试。
示例2:考虑www.itxiaonv.com网站的主页,它有许多组件,如
主页、测试、SAP、Web、必须学习!、大数据、实时项目、博客等。
同样,任何软件都是由许多组件组成的,而且每个组件都有自己的子组件。单独测试示例2中的每个模块,而不考虑与其他组件的集成,在小范围内称为组件测试。
如何进行组件测试
点击测试下拉菜单,如下面的截图所示,可以看到测试组件的各个“子组件”。因此,显示的子组件有手动测试、SOAPUI、QTP、JUnit、Selenium、测试管理、Selenium、Mobile Testing等。
CTIL-大型组件测试
在没有隔离被测软件或应用程序中的其他组件的情况下进行的组件测试称为大型组件测试。
举个例子来更好地理解它。假设有一个应用程序由三个组件组成,即组件A、组件B和组件C。
开发人员已经开发了组件B,并希望对其进行测试。但是为了完全测试组件B,它的一些功能依赖于组件A,少数依赖于组件C。
功能流:A->B->C,这意味着从A&C到B都有依赖关系,因为根据图中的存根是被调用的函数,而驱动程序是调用的函数。
但是A组分和C组分还没有开发出来。在这种情况下,为了完全测试组件B,我们可以替换测试,因此基本上,组件A和C被作为虚拟对象的存根和驱动程序替换,直到它们被实际开发。
- Stub:从待测试的软件组件中调用存根,如下图所示,组件A调用“存根”。
- 驱动程序:驱动程序调用待测组件,如下图所示,‘组件B’由驱动程序调用。
单元测试与组件测试
单元测试 | 组件测试 |
---|---|
测试单个程序、模块以证明程序按照规范执行,称为单元测试 | 在隔离或不隔离其他对象的情况下单独测试软件的每个对象或部分称为组件测试 |
对照设计文档进行了验证 | 根据测试要求、用例进行了验证 |
单元测试由开发人员完成 | 组件测试由测试人员完成 |
首先进行单元测试。 | 组件测试是在开发人员端完成单元测试之后进行的。 |
总结:
在软件工程中,组件测试在查找错误方面起着至关重要的作用。在开始集成测试之前,始终建议执行组件测试,以确保应用程序的每个组件都能有效工作。
集成测试之后是组件测试。在一些参考文献中,组件测试也称为模块测试。