欢迎来到天天文库
浏览记录
ID:20827011
大小:54.00 KB
页数:6页
时间:2018-10-16
《敏捷开发中的软件测试研究》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、敏捷开发中的软件测试研究为了能够更好地了解敏捷开发中的测试问题,确保敏捷开发的软件产品质量,针对敏捷开发中的软件测试进行了详细分析,提出了敏捷开发的软件测试方法。该方法以测试驱动开发为主,传统测试手段为辅,符合敏捷开发中以用户需求为核心的理念,同时将开发过程中的周期性迭代方式更好地表现出来。通过将瀑布开发流程图中的测试和敏捷测试中的主要测试方法——测试驱动软件开发进行对比,得出了敏捷测试的主要特点与优势。0引言如今,软件产品被广泛应用于各个领域,如航空、机械、电子产品等,软件产品质量成为软件开发中重点关注的方向。在一些对
2、于安全性要求较高的领域,对软件产品的质量要求更高。例如,在2011年温州发生的7.23动车追尾事故,导致212人伤亡;1996年阿里亚娜5型火箭发射39秒后爆炸,直接经济损失3.7亿美元;2002年首都机场电脑系统出现故障,导致6000多人滞留机场等。软件中存在的缺陷是造成这些严重后果的根源。因此,软件测试的重要性不言而喻。传统的软件开发流程越来越无法满足当下软件需求的频繁变动,如传统的瀑布模型,测试人员在一定的控制点之前不能测试,所以在此之前无法找到缺陷。等到所有开发完成,即过了该控制点后再进行测试,缺陷数量会急剧增加
3、,同时任何缺陷的修复都需要对一连串代码进行变动,修复时间难以确定,软件迟迟不能发布,损失将难以估量。敏捷软件开发是基于一种更接近人类活动现实情况的方法论,采用以人为本、迭代、增量的开发过程,逐步满足软件不断变更的需求[1]。敏捷主要提倡个人为团队所作的贡献,注重各个职位的权利下发,发挥个人的主观能动性,保证随时都有可供交付的软件产品。敏捷开发更容易在项目早期控制缺陷数目。软件测试是保证软件质量与可靠性的重要手段,敏捷开发能充分发挥软件测试的重要作用。1敏捷开发思想敏捷开发是以用户的需求进化为核心,采用逐步迭代、循序渐进的
4、方式进行软件开发。在敏捷开发模式中,软件项目在开发前,先将整体项目切分成多个子项目,迭代过程中根据需要可以对子项目进行拆分或同时进行多个子项目,每一个子项目都要经过测试,保证项目能运行成功。换言之,就是把一个大的软件项目分成许多小项目,每个项目独立完成,但相互之间又有联系,在该过程中软件始终处于可用状态。敏捷开发本身更多的是一种概念,它是一种循序渐进的迭代开发方式,强调团队成员间的沟通。2001年,敏捷开发创始人发布了敏捷宣言:个体和交互胜过流程和工具,可用的软件胜过完备的文档,客户协作胜过合同谈判,响应变化胜过遵循计划
5、[2]。也即,虽然后半部分的条目也具有价值,但是更看重前半部分的条目。他们希望这将成为成功的软件开发的基础。敏捷开发的方法很多,主要包括快速应用开发(RAD)[3]、极限编程(XP)[4]、动态系统开发方法(DSDM)[5]与Scrum[6]。本文构建的测试模型借鉴敏捷开发过程中的迭代思想,以渐进的方式完成测试工作,不仅可使测试工作具有更好的灵活性,同时也能更好地适用于现有的敏捷开发过程。软件是一种非常特殊的产品,开发出的软件通常会存在一些缺陷,而有些缺陷会造成非常严重的损失。软件测试则成为保障软件质量的一种重要手段[7
6、]。根据不同标准有多种测试方式,如集成测试、单元测试、系统测试、验收测试和回归测试。传统的V测试模型和(puterAidedManufacturing,计算机辅助制造)软件。该软件的目标是比UGNX中的相同功能有更快的计算速度和更高的精度。3.2需求分析和项目规划阶段项目经理和产品经理根据客户给定的需求进行分类,包括框架、加工方式、加工质量、刀具选择、仿真等需求,并对项目可能产生的需求进行判断和规划,形成项目计划书。项目计划书包括项目背景、、需求以及预期完成时间。项目计划书完成之后即可开始进行第一个迭代,并以第一个迭代为
7、基础不断进行下去,直到完成所有需求。由于整体项目过于庞大,这里只对第一个迭代进行介绍。项目实例:第一个迭代中有2个需求,同时根据工作量分配任务天数以及每个需求的参与人员,如表1所示。3.3迭代进行阶段迭代开始时,项目经理制定迭代的具体开发任务和测试任务。在迭代启动会议中,每个人都要对此次迭代任务有统一认识,并且能够承载相应的任务量,在需求确定完毕后进行任务分配。.开发人员进行编码时,测试人员的工作重点包括:编写测试计划、测试用例、验收测试以及提交和验证。测试计划和测试用例的编写同时完成,且在迭代初期完成。验收测试一般是在
8、迭代后期进行集成测试,迭代过程中也可以协助开发人员进行单独的功能测试。3.3.1编写测试计划和测试用例测试计划需要具体的操作步骤以及相对完善的测试用例来涵盖需求,因此需要测试人员有比较丰富的测试经验。项目实例如下:表2和表3中的TestParts需要填写测试工件名称。测试计划编写完成后要经过开发人员和项目经理确认,保
此文档下载收益归作者所有