目前来看,测试从需求阶段介入,已经是一个不争的事实
优点从两方面来说:
1.测试本身,测试人员更早的熟悉整个项目的迭代计划,熟悉每个迭代的具体需求, 这样测试能够更好的去安排测试计划,提前设计测试场景,准备测试环境和数据,从而使整个项目测试工作有条不紊的进行,即使有突发情况也能快速调整,提高测试效率;
2.项目本身,从全局来看,测试人员往往更加熟悉需求,可以在需求阶段,发现一些逻辑上的问题提出一些可以修正优化的点,否掉一些不合理的需求点,总的来说可以让一些缺陷更早的暴露出来,大大减少开发测试后续的工作量,从而提升整个研发团队的效率;
那么下面我们详细分析一下:
1、测试参与需求分析的必要性
做为测试想要测好一个项目,首先必须了解本次测试的范围、复杂程度与可能存在的风险,这些内容会出现在需求文档,可以通过需求分析过程进行确认和评估。
所谓知己知彼,百战不殆。测试对要测的产品需求都不明确,必然会造成获取的信息不正确,无法对所测软件有一个清晰全面的认识,测试计划和前期准备,只凭感觉不做详细了解就下定论的项目是失败的。
测试需求分析越详细精准,表明对所测软件的了解越深,对所要进行的任务内容就越清晰,就更有把握保证测试的质量与进度。
如果把测试活动比作软件生命周期,测试需求分析就相当于软件的需求规格,测试策略相当于软件的架构设计,测试用例相当于软件的详细设计,测试执行相当于软件的编码过程。只是在测试过程中,我们把”软件”两个字全部替换成了”测试”。这样,我们就明白了整个测试活动的依据来源于测试需求,所以需求分析是整个测试活动必不可少的环节。
2、测试不参与需求分析可能造成的后果
不做需求分析或需求分析不到位,可能会产生很严重的问题,比如:
(1)浪费时间和资源实现了用户不需要的需求;
(2)遗漏了需求文档中没提到,但很重要的需求,导致客户满意度降低。
(3)需求分析不到位,错误的估计了测试的工作量,导致延误发布周期,可能会降低发布质量。
以上的几个问题,在实际开发中是比较常见的,主要的原因就是需求分析不到位,会导致影响客户的满意度。