📅  最后修改于: 2021-01-10 15:43:10             🧑  作者: Mango
该模型的出现是为了克服瀑布模型的缺点。在这种模型中,测试从需求阶段本身开始。
在此模型中,首先,所有活动都朝下进行,并在某个时间点开始朝上运动,以将测试文档重新用于测试过程并形成V形。因此,它被称为V模型。
我们选择V和V模型的原因如下:
在继续进行此模型之前,首先,我们将了解需求:
它是从客户那里收集的文件;在这里,我们有两种不同类型的需求文档,如下所示:
CRS或BRS代表客户需求规范或业务需求规范。对于CRS,详细信息将由BA(业务分析师)以简单的业务(英语)语言编写,开发人员和测试工程师无法理解。
让我们来看一个Gmail应用程序的“客户需求规范”示例示例:
1. | Customer secured entry |
2. | Optional creates mails |
3. | Able to see mails |
4. | Unwanted content delete |
— | |
—- | |
15. | Successfully close the application. |
它代表软件需求规范或功能规范;在此过程中,所有细节都转换为细节文档,开发人员和测试工程师可以理解。
让我们来看一个Gmail应用程序的软件需求规范示例示例:
1. | Login ( module) |
1.1 | User name→ Text box (functional specification ) |
1.1.1 | User name→ Accept only 5 alphabets |
1.2 | Password→ text box |
1.2.1 | Password→Accept only 8 characters, in which one should be capital and one special character(@,$,%,&) |
1.3 | OK→ Button |
1.3.1 | OK→ enabled |
2. | Compose |
2.1 | To→Text Box |
—– | |
—– | |
3. | Inbox |
3.1 | —- |
—- | |
4. | Logout |
整个V模型分两个阶段执行,完整的审查过程在验证阶段完成,而整个测试过程在验证阶段完成;这就是为什么它也称为验证和确认模型。
验证和确认过程包括不同的阶段:
阶段1
从业务分析师向客户收集CRS(客户需求规格)文档开始,测试工程师将检查以下场景:
注意:在所有阶段,测试文档都包括测试计划和测试用例。
一旦测试工程师团队检查了CRS并发现任何错误或缺陷,他们就会将其发送给开发团队以修复错误。修复错误后,开发团队将更新CRS并同时开发SRS文档。
第二阶段
完成CRS后,将SRS发送到测试团队以进行审查过程,并且开发人员开始为应用程序创建HLD(高级设计)。测试团队将在以下情况下测试SRS:
一旦测试团队检查了SRS的每个细节,并且CRS已正确转换为SRS,我们将进入下一阶段。
第三阶段
完成HLD之后,开发人员将开始为应用程序创建LLD(低级设计),同时,测试人员将检查HLD上的以下测试:
阶段4
一旦测试团队完成对HLD的审查,开发人员将编写代码并开发应用程序,测试团队将执行以下任务:
阶段5
编码部分完成后,开发人员将执行一轮单元测试(也称为白盒测试),并检查代码的每一行并确保代码正确。
在执行单元测试之后,将应用程序发送到测试团队,在测试团队中,他们执行多项测试,例如功能测试,集成测试,系统测试和验收测试。
测试部分完成后,该应用程序最终将交付给客户。
注意:
如何处理V和V中的需求更改?
每当需求发生变化时,相同的过程就会继续,并且文档将被更新。
让我们看看V和V模型的优缺点:
Advantage | disadvantage |
---|---|
In this, review exists in every phase, that’s why we may get less number of bugs in the application. | It is a bit expensive process because Initial investment is high as the testing team is needed from the starting stage itself. |
The V model provides the Parallel deliverable, which implies that the two teams can work together like here; the development and testing team are working parallelly. | It is a time-consuming process because if requirement changes happen, we need to change every text documents. |
This model helps to deliver Robust or stable products. | In this, we need to do more documentation work because of the test cases and all other documents. |
In this model, the test Engineers have more knowledge about the product because testing is involved in every stage of product development. | The V model is not suitable for object-oriented projects. |
The text document can be re-used. | We cannot go back and replace the functionality once the application is in the testing phase. |