传统测试与敏捷测试工作模式对比

传统软件测试与敏捷测试是基于两种不同的思路构建的软件测试工作方式。


1.传统测试中,测试通常是不同于开发的部门/小组,组织是按照不同的职能进行划分;敏捷测试是基于项目对职能进行划分,同一个组中包含业务BA、开发DEV和测试QA,还包含PM、架构师等角色,一个项目组中包含了产品开发过程中所有的角色,这个小组可以独立组织。

2.传统测试中,测试与开发人员的交流是跨部门的,因而当碰到问题时,职能型组织容易出现“深井病”,管理沟通成本较高;敏捷环境中,所有职能人员组成一个小组,项目型组织出现问题时可以直接沟通,难以达成一致时由PM协调。

3.两种工作模式的不同

传统测试:

需求阶段—开发写需求,测试人员参与需求评审;

设计&实现阶段—开发人员设计软件&实现,测试人员准备测试点、测试设计;

集成阶段—开发代码发布,进入软件集成阶段,测试人员执行测试用例并反馈开发。

而敏捷测试中,取一个迭代来说:

故事分析—BA、DEV、QA按照合适的形式共同编写用户故事,可以结对编写,可以共同编写后review,也可以先讨论后再写;

故事启动—故事Kickoff meeting,由DEV讲解用户故事后,BA&QA共同讨论补充或澄清,使大家对故事的理解on the same page;

故事开发—DEV开发&实现,QA一起参与或准备测试用例,如果遇到问题,BA、QA一起澄清;该阶段还包括DEV或者与QA一起编写单元测试驱动,如果DEV单独写,QA对该驱动进行review;

故事验收—BA、DEV、QA一起到开发电脑上验收故事;

故事测试—QA执行自动化测试和探索性测试用例,持续反馈测试结果;

故事演示—团队中的任何成员给客户就合适分组的故事showcase

4.质量文化的不同:

传统测试中测试人员是Quality Assurance质量保证,在产品已经初步完成时开始测试产品。

敏捷测试中整个团队对产品质量负责,测试人员QA不仅仅是质量保证人员,是Quality Analyst质量分析,还是质量倡导者Quality Advocate。其影响质量的方方面面,在任何时候都保证团队做对的事情,以质量为首位,而不仅仅做应该做的事情,必要的时候也需要突破团队人员各自职能。


关于质量倡导者这部分,QA是整个团队中的质量核心,倡导大家协同一致对质量负责,因而敏捷团队中的QA角色本身,对沟通协调能力的要求非常高,如果没有出色的软性能力,无法完成这样的使命。


关于对产品质量的定义,我们下次开辟一个专题讨论一下。

你可能感兴趣的:(传统测试与敏捷测试工作模式对比)