在我们学习V模型之前,让我们理解 -
什么是SDLC?
SDLC是软件开发生命周期:Software Development Life Cycle。 这是开发人员为设计和开发高质量软件而开展的一系列活动。
虽然SDLC使用术语“开发”,但它不仅涉及开发人员完成的编码任务,还包括测试人员和利益相关者提供的任务。
在SDLC中,创建了测试用例。
什么是STLC?
STLC是软件测试生命周期(Software Testing Life Cycle)。 它由Testers在方法上进行的一系列活动组成,用于测试您的软件产品。
尽管STLC使用术语“测试”,但它不仅仅涉及测试人员,在某些情况下,他们也必须涉及开发人员。
在STLC中,执行测试用例。
什么是瀑布模型?
瀑布模型是一个顺序模型,分为软件开发活动的不同阶段。 每个阶段都是为在SDLC阶段执行特定活动而设计的。 瀑布模型中的测试阶段仅在系统实施完成后才开始。
测试在SDLC内完成。
什么是V型?
V-模型是瀑布模型的扩展。 它被称为“vee”模型。 与瀑布模型不同,在V模型中,每个软件开发阶段都有相应的测试阶段。 V模型中的测试与SDLC阶段并行完成。
测试是作为SDLC的子项目完成的。
示例了解V模型
假设为您分配了一项任务,即为客户开发自定义软件。 现在,无论您的技术背景如何,都要尝试对您将要遵循的步骤顺序进行有根据的猜测,以完成任务。
软件开发周期的不同阶段 | 每个阶段都进行的活动 |
---|---|
需求收集阶段 | 从客户端收集尽可能多的有关所需软件的详细信息和规格的信息。 这只是需求收集阶段。 |
设计阶段 | 规划 Python,java等编程语言; 像Oracle,MySQL等数据库。这适用于项目,也适用于一些高级功能和架构。 |
编码阶段 | 编码 |
测试阶段 | 测试软件以验证它是否按照客户端提供的规范构建。 |
部署阶段 | 在相应的环境中部署应用程序 |
维护阶段 | 根据客户请求更改代码 |
所有这些级别构成了软件开发生命周期的瀑布方法 。
瀑布模型的问题
正如您所看到的, 模型中的测试仅在实现完成后才开始 。
但是,如果您在大型项目中工作,系统很复杂,那么很容易错过需求阶段本身的关键细节。 在这种情况下,完全错误的产品将被交付给客户,您可能需要重新开始项目,或者如果您设法正确地记录要求但是在软件的设计和架构上犯了严重错误,您将不得不重新设计整个软件来纠正错误。
对数千个项目的评估表明, 在需求和设计过程中引入的缺陷几乎占缺陷总数的一半。
此外, 修复缺陷的成本会在整个开发生命周期中增加 。 生命周期越早,检测到缺陷,修复它就越便宜。 正如他们所说,“时间缝合可以节省9个。”
解决方案:V模型
为了解决这个问题,开发了V型测试模型 , 对于每个阶段,在开发生命周期中都有相应的测试阶段。
该模型的左侧是软件开发生命周期 - SDLC
该模型的右侧是软件测试生命周期 - STLC
整个图看起来像V,因此名称为V - model
除V模型外,还有迭代开发模型,其中开发分阶段进行,每个阶段都为软件添加功能。 每个阶段都包括其独立的开发和测试活动。
迭代方法之后的开发生命周期的良好示例是快速应用程序开发,敏捷开发
小结
有许多开发生命周期模型。 为项目选择的开发模型取决于该项目的目标。
测试不是一项独立的活动,它必须调整为项目选择的开发模型。
在任何模型中,都应该在所有级别进行测试,即从需求到维护。