什么是组件测试?(技术,示例测试用例)

组件测试

组件测试是软件测试的一个子类别,其中软件的每个单独组件都单独测试,而不与其他组件集成。从架构的角度来看,它也称为模块测试。

一般来说,一个软件由几个组件组成。组件测试分别处理这些组件。它是最常见的黑盒测试类型之一。它通常由 QA(质量保证)团队执行。

组件测试需要一个测试策略和测试计划,我们分别考虑软件的每个部分。我们为每个组件定义了一个测试场景,它进一步分为高级测试用例、带有先决条件的低级详细测试用例。

单元测试通常由开发人员完成,而组件测试由测试人员完成。组件测试是在开发团队完全执行单元测试后完成的。此构建称为 UT(单元测试)构建。在这个阶段,测试人员测试软件组件的所有主要功能。

组件测试的进入标准: UT 中包含的最少组件数量必须通过单元测试进行开发和测试。

组件测试的退出标准:1)所有组件的功能必须按预期工作;2) 软件中不应存在严重、高、中等严重性和优先级缺陷/错误

组件测试的目的

执行组件测试的主要目的是检查测试对象或组件的输入/输出行为是否按预期工作。组件测试确保组件的功能按规定正常工作。

  • 降低风险- 组件测试验证软件的每个组件,并帮助识别软件代码中的错误并修复它们。

  • 发现组件中的错误- 组件测试有助于识别软件源代码中的错误。此外,它还验证程序中使用的控制流、功能、数据结构等。

  • 验证组件的功能和非功能性能- 组件测试确保系统设计和规范按预期和指定的方式执行。

  • 提高组件的质量- 组件测试对于开发和保持对组件的信心至关重要;额外测试中的错误更少;因此,提高了软件的质量。

  • 为了防止错误逃逸到更高的测试级别- 开发人员识别编码错误并尽早修复它们。因此,它减少了更高级别测试中错误的存在。

组件测试中的输入

组件测试的主要输入是 -

  • 测试计划

  • 系统要求

  • 组件规格

  • 组件实现

元器件测试技术

组件测试有两种技术 -

  • CTIS(小型组件测试)

  • CTIL(大型组件测试)

CTIS

可以在分离或不分离软件组件的情况下执行组件测试。当通过隔离其他组件进行测试时,称为 CTIS。

例如,考虑一个有五个网页的网站。因此,通过分离或隔离其他组件来独立评估或测试每个此类网页是小型组件测试。

每个软件都有很多组件,而这些组件又有自己的子组件。在不与其他组件集成的情况下测试每个组件称为小组件测试。

CTIL

不分离软件组件的组件测试在大体上称为组件测试。例如,考虑一个由三个组件组成的应用程序——组件 A、组件 B 和组件 C。

开发组件 B 的开发人员希望对其进行测试。然而,组件 B 的少数功能依赖于组件 A 和组件 C。它们的功能流程是 A->B->C。被调用的函数称为存根,而调用函数称为驱动程序。

但是,其他两个组件 - A 和 C 尚未开发。因此,为了测试组件 B,我们将组件 A 和组件 C 替换为存根和驱动程序,这将是我们的虚拟对象,直到这两个组件被实际开发。

Stub是要测试的软件组件,Driver是调用stub的组件,即要测试的组件。

组件测试过程

  • 需求分析- 在第一阶段,我们确定与每个组件相关的用户需求。

  • 测试计划- 在这个阶段,我们设计测试来评估用户需求。

  • 测试规范- 在这个阶段,我们确定需要执行的测试用例和可能遗漏的测试用例。

  • 测试实施- 在这个阶段,我们根据用户要求确定测试,以实施测试。

  • 测试记录- 在这个阶段,我们记录和审查在之前的测试实施阶段发现的错误。

  • 测试验证- 在这个阶段,我们验证软件是否符合规范。

  • 完成- 成功完成上述所有六个阶段后,我们进入组件测试的最后阶段。在这里,我们评估结果以提供优质产品。

组件测试的示例测试用例

考虑两个不同的网页,它们在功能方面相互关联。

  • 网页 1 是登录页面。当您在文本字段中输入有效的用户 ID 和密码并单击提交按钮时,网页将导航到主页。

  • 网页 2 是主页。在这里,登录是一个组件,主页是另一个组件。单独测试每个单独的页面称为组件测试。

组件测试网页时的场景1

  • 输入无效的用户 ID 以检查系统是否弹出并警告用户。

  • 输入无效的用户名和密码,单击“重置”并检查在文本字段中输入的数据 - 用户名和密码是否被清除。

  • 输入有效的用户名和密码,然后单击“登录”按钮。

组件测试网页时的场景2

  • 检查首页是否有欢迎信息。

  • 检查网页左侧的链接是否可以点击。

  • 检查经理 ID 是否显示在网页中间。

单元测试与组件测试

下表突出显示了单元测试和组件测试之间的区别 -

单元测试组件测试
Testing of individual programs, modules to verify that they execute as per the specifications
在隔离或不隔离其他组件的情况下单独测试软件的每个对象或组件
Validates design documents
验证测试需求和用例
Performed by developers
由测试人员执行
It is performed first
在单元测试完成后执行

为什么组件测试很重要?

  • 详细评估- 每个单独组件的组件测试可以在获取所有组件后进行详细评估。我们可以在真实的 Web 服务器上测试所有可能的错误。单元测试是不可能的,我们不在实时服务器上测试每个单元。

  • Early Bug Identification - 组件测试可以在任何阶段执行,因此我们可以更快地识别和修复错误。它为我们节省了金钱、精力和时间。它还使开发团队能够在将软件组件移交给 QA 团队之前测试所有可预防的错误/缺陷。

  • 认证合同- 组件测试帮助我们认证合同;组件测试是可靠的。这是验证我们的模块或组件以按规定交付软件的最佳方式。此外,软件可以毫无疑问地集成。

结论

组件测试是我们可以在其开发的任何阶段估计软件的模块或组件的功能的准确和最佳方法。通过消除所有可避免的错误,它可以节省成本,还可以在以后的阶段节省不必要的工作。

组件测试是在单元测试完成后进行的。后者由开发人员执行,而前者由测试人员执行。组件测试必须始终在集成测试之前进行。因为如果前者是准确的,那么我们甚至可以在集成测试期间识别出微小的缺陷。组件测试确保软件的每个组件都按预期和指定的方式运行。

以上是 什么是组件测试?(技术,示例测试用例) 的全部内容, 来源链接: utcz.com/z/363356.html

回到顶部