欢迎来到天天文库
浏览记录
ID:41476313
大小:59.34 KB
页数:6页
时间:2019-08-25
《敏捷方法对测试的挑战》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、敏捷方法对测试的挑战日期:2013/3/4来源:不详作者、RBCS总裁RexBlack译者乙郑丹丹1美国RBCS公司Westford018862作者广州赛宝认证中心服务有限公司广州510610摘要在软件行业,敏捷开发己成为众多高效开发团队的选择。然而凡事都有两面性。本文为您揭示了敏捷方法为测试带来的挑战,也提出了相应的解决方案。关键词敏捷方法基于风险的测试混合的测试策略HOWAGILEMETHODOLOGIESCHALLENGETESTINGI2AuthorRexBlackTranslatorDandanZheng1(RBCS,USA,Westford01886,USA)2
2、(CEPREICertificationBody,Guangzhou10610,China)AbstractAgilemethodologiesaregraduallybccomingthechoiceofmanycfficientdcvclopmentteaminsoftwareindustry.Buttherearealwaystwosidesofonething.Theessaytriestodemonstratechai1engesbroughttotestingbyAgi1emethodologiesandproposescorrespondingsolution
3、s.KeywordsAgilemethodologiesRisk-basedtestingblendedtestingstrategy我们有不少客户已经采用了Scrum和其他敏捷方法。每种软件开发生命周期模型,从顺序型到螺旋型到增量型再到敏捷,对测试而言都有各自的含义。有的含义是让测试过程变得容易些,对于这种情况,在此我们无需担心。而也有些含义给测试带来了挑战。在木案例研究中,我对这些挑战进行了阐述以便我们的客户能够理解Scrum方法带來的问题,并将Z与我们客户面临的其他类型的测试问题区分开来。在我的书中和咨询过程中,我通常都推荐采用由以下三种测试策略组成的混合型测试策略:
4、基于风险的分析型测试;自动化回归测试;响应性测试(也称为动态测试)。我推荐的混合型测试策略可以很好地与Scrum和其他敏捷方法相统一。在有些情况下,这种策略能缓解测试风险,降低这些方法给测试带來的挑战。然而,它并不能解决所有的风险和挑战。在本文中,让我们来看看RBCS采用Scrum和敏捷方法的客户们面对的一些挑战。敏捷开发的原则之一就是项目组应该“欢迎需求的变化,即使到了开发后期”(见ag订cmanifcsto.org)□许多测试策略,特别是基于需求的分析型测试,在这种情况下效率就变得相当低了。而基于风险的测试则善于接纳变更,因为我们总是可以增加风险,删除风险,变更风险和调
5、整风险的级别。如果已经在执行测试,我们可以根据质量风险的新情况来调整剩余周期的计划。由于基于风险的测试提供了一种聪明的方法来决定测什么、测多少、按什么顺序测,所以我们总能根据项FI组提供的新信息或指导修改这些决定。灵巧的自动化测试也能接受持续的变更。如果小心处理,图形化用户界面的自动化能够实现可维护性。稳定的命令行接口的自动化则一般不会出现严重的可维护性问题。我推荐的响应性测试不需要太多文档,面临变更时也非常灵活。然而,变更可能会把与采用这些测试策略无关的挑战强加于测试。许多挑战来源于产品及其正确行为(也见下文)的定义上的变更。当这些变更没有传达给测试组,或变更非常频繁时,
6、就会导致测试的开发、执行和维护效率低。在顺序型的生命周期模型中,测试组在执行系统测试Z前有段较长的时间用来开发和维护测试,这与系统的开发工作并行。一些更正式的迭代生命周期模型,例如快速应用开发和Rational统一过程(RUP),通常在每个迭代的测试执行周期之间留有充足的时间段。这种时间间隔让测试组能够开发和维护其测试体系。Scrum等敏捷方法没那么正式且行动更快速。正如其名称冲刺(sprints)表现的一样,这些方法都使用短而快速的迭代。对于很多客户,RBCS咨询师已发现这样的速度和短暂性进一步压缩了测试组开发和维护测试体系的能力,同时与前面说到的变更的影响相混合。已经证
7、实了包含自动化元素的测试策略对这一挑战特别敏感。前面推荐的策略具有基于风险的元素,这点能够有帮助。基于风险的测试关注于覆盖重要的部分,较少关注甚至不关注不那么重要的部分,减少了短迭代造成的一些压力。也己证明这种关注的能力对于受到紧缩资源限制的测试组特别有帮助。敏捷世界中的测试组应该按照风险优先级顺序来开发、维护和执行测试。使用风险优先级对开发和维护的工作进行排序,能让测试组在每个冲刺的测试执行阶段开始时就已经准备好了最重要的那些测试。3.接收的代码经过了不一致的且经常是不充分的单元测试敏捷方法的许多作者、实践者和学
此文档下载收益归作者所有