软件测试 - 存根
开发一个易于使用并确保高质量的软件需要考虑多个因素。驱动程序和存根在测试过程中起着重要作用。它们被用作尚未准备好开发的模块的替代品。因此,借助驱动程序和存根,即使软件开发仍在进行中,也可以开始测试。
驱动程序和存根用于尚未开发、缺失或正在开发的组件。因此,驱动程序和存根都充当软件原始组件的替代品。它们能够模拟缺失组件的功能。它们非常有助于最大限度地减少测试周期中的延迟,加快整个测试过程并提高测试效率。
什么是软件存根?
软件存根用于自顶向下集成测试。它们由开发人员实现,作为软件中缺失或尚未完全开发的特定单元的替代品。它们能够模拟软件中不可用模块的所有功能。当需要某些较低级别的组件进行测试但在此时无法访问时,主要使用它们。
应该开发软件存根,以便它们显示跟踪和显示的消息。它们还处理实际模块应该作用于的值。此外,它们获取在测试时要使用的参数或参数。
当软件需要与外部系统交互时,也使用存根。
存根流程图
上图清楚地表明,模块 1、2 和 3 可用于集成,而下面的模块仍在开发中,此时无法集成。因此,使用存根来测试模块。集成顺序将为:
1,2 1,3 2,Stub 1 2,Stub 2 3,Stub 3 3,Stub 4
测试方法
+ Firstly, the integration between the modules 1,2 and 3 + Test the integration between the module 2 and stub 1,stub 2 + Test the integration between the module 3 and stub 3,stub 4
什么是软件驱动程序?
软件驱动程序用于自底向上集成测试。它们创建的目的与存根相同,但是它们比存根复杂得多。当测试时某些模块由于某些原因仍未开发时,使用它们。因此,驱动程序充当这些缺失模块的替代品。当需要某些更高级别的组件进行测试但在此时无法访问时,主要使用它们。此外,驱动程序和存根可以在测试时同时使用。
让我们以一个电子商务为例,其组件包括登录、产品搜索、支付、订单摘要和帮助。始终建议并行开始所有组件的测试,以便一旦开发出其中一个组件,就可以将其与其他组件结合起来并进行验证。但是,通常情况下,组件并未完全开发到可以用于测试的程度。在这种情况下,使用驱动程序和存根。
让我们假设登录模块已准备好,但是产品搜索模块的开发仍在进行中。此时,可以使用驱动程序或存根来模拟产品搜索模块的工作。因此,如果某些模块仍然不可用,它们有助于继续进行测试。同样,如果从开发角度来看其他模块(如支付、订单摘要和帮助)尚未完成,则可以使用驱动程序和存根。
驱动程序和存根是否执行相同的功能?
是的,驱动程序和存根执行相同的功能,并且由于一个依赖于另一个模块的模块不可用,因此可以在测试时使用它们。
存根和驱动程序之间的区别
序号 | 存根 | 驱动程序 |
---|---|---|
1 | 用于自顶向下集成测试。 | 用于自底向上集成测试。 |
2 | 被称为被调用程序。 | 被称为调用程序。 |
3 | 当较低级别模块不可用时使用。 | 当较高级别模块不可用时使用。 |
结论
本教程对软件存根进行了全面的介绍。我们首先描述了什么是软件存根,什么是软件驱动程序,驱动程序和存根是否执行相同的功能,以及存根和驱动程序之间的区别。这使您掌握了软件存根的深入知识。明智的做法是不断练习您所学的内容,并探索与软件测试相关的其他内容,以加深您的理解并拓宽您的视野。