测试协同管理是测试效率的推动力

瀑布式开发模式严格把软件项目的开发分隔成各个开发阶段:需求分析,要件定义,基本设计,详细设计,编码,单体测试,结合测试,系统测试等。它重视和强调过程文档,在开发的中后期才会看到软件原型,早起只能通过文档来了解系统的模样。在这种情况下,文档的重要性仿佛已经超过了代码的重要性。

相比过时的瀑布式开发模式,现在越来越多的团队开始使用敏捷开发模式,敏捷开发模式需要把客户最关注的软件原型先做出来,交付或者上线,在实际场景中去修改弥补需求中的不足,快速修改,再次发布版本。再次上线或者交付。通过一些敏捷实践方式,细化story,可以提供更小的迭代。如此循环,直到用户(客户)满意。适用于需求不明确的项目、创新性的项目或者需要抢占市场的项目。

敏捷测试就更加需要团队之间的协作,软件测试的过程,是一个与人合作的过程。软件测试从一开始的需求分析,到编写测试计划、测试用例和执行测试,再到产品验收、产品上线等阶段,都要求测试人员之间的协作,还有测试人员与产品人员、开发人员、产品/项目经理的配合。所以测试人员要想出色地完成测试任务,非常非常需要团队合作。特别是在大型项目中,测试人员想凭借一己之力去取得卓越的成果,会非常困难。单打独斗的时代早已结束了,取而代之的正是团队合作!


敏捷测试更加讲究团队协同工作,包括团队内部和团队外部的协同、以及测试管理工具使用。

一、团队内部协作

验收测试驱动、行为驱动和测试驱动开发都被证明是质量和效率的重要驱动因素。所有可能的初始情况、条件和预期结果都会暴露出来,通过对整个过程进行思考,整个团队可以真正了解某个用户故事的预期结果。

理想情况下,敏捷团队的测试遵循的是结对编程的模式。像结对程序员互相评审代码一样,在协作测试中,开发人员和测试人员在各自的用户故事上并行工作,相互支持,在第一天就能提供测试工件,这就是所谓的“测试自助服务模型“。一旦开发人员开始编译代码,测试驱动程序就也跟着启动了。根据检查和平衡原则,这种方法设定了很高的质量标准,并且还可以释放掉一些开发者资源

测试人员在测试过程中作为团队的一员,有必要具备这些抽象却又宝贵的能力:沟通能力、学习能力还有执行能力。

二、团队外部协作

敏捷团队是跨职能的,测试人员是团队的一部分。敏捷团队可以自我组织,自我管理,并在每个sprint中提供经过充分测试的工作增量。敏捷团队基于愿景、架构和用户体验指南运作。这种团队运作模式最小化了交接,实现信息共享,并改善了跨阶段协作。

1、保持良好的心态,提高对开发人员与测试人员之间关系的认识,从软件开发人员的角度来说,需要认识和做到以下这几点:

a) 测试人员为开发人员保证交付产品的质量,共同或全部分担了已交付产品的缺陷责任。通过测试人员的工作,能够在交付给客户之前发现软件产品的缺陷。软件产品不可能没有缺陷的存在,但是被测试人员发现的后果远比被客户发现的后果小。

b) 作为对交付出去的软件产品的共同责任方,开发人员和测试人员之间合力于减少交付出去的软件产品的缺陷,作为互相合作的双方,开发人员需要帮助测试人员发现缺陷。

2. 对于客户想法的理解,开发团队与测试团队需要达成一致并且保持同步。交付产品是由客户进行验收和操作的,测试人员模拟客户对软件产品的操作进行缺陷测试。因此,开发团队和测试团队在客户需求和软件操作界面方面需要有共同的认识和理解。并且随着需求的变化和软件的分阶段发布,需要在这两方面保持同步。这样对于双方来说能大幅度的减少无谓的工作量,并且提高双方工作的质量。


3. 互相帮助,共同提高。作为合作关系的一方,测试团队和开发团队都可以对对方提供支持和帮助,同时也能提高自己的工作效率和质量。


三、测试管理工具使用

测试管理工具是在指在软件开发过程中,对测试需求、计划、用例和实施过程进行管理、对软件缺陷进行跟踪处理的工具。通过使用测试管理工具,测试人员或开发人员可以更方便地记录和监控每个测试活动、阶段的结果,找出软件的缺陷和错误,记录测试活动中发现的缺陷和改进建议。通过使用测试管理工具,测试用例可以被多个测试活动或阶段复用,可以输出测试分析报告和统计报表。有些测试管理工具可以更好地支持协同操作,共享中央数据库,支持并行测试和记录,从而大大提高测试效率。

下面,我们就以飞蛾测试管理工具为例。

1、测试用例管理需要结构化,方便测试人员编写测试用例。同时用例库中的测试用例还能够复用。


2、测试过程能够协同,自己的和别人的测试任务清晰可见,而且为测试任务添加结果要方便快捷。


3、测试进度需要一目了然,方便管理者合理分配和调整测试资源。


4、能够集成第三方管理工具,如jira、trello、redmine、bearychat、slack等,使得测试能够融入到整个开发生态。


四、总结

在我们的测试工作中,特别是敏捷开发团队的测试,非常注重效率的提高。上面我们讲了,做好测试协同管理工作能够有效推动测试效率的提高,包括团队内部协作,团队外部协作,以及测试管理工具的使用。


你可能感兴趣的:(测试协同管理是测试效率的推动力)