软件项目验收测试研究.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件项目验收测试研究.doc

软件项目验收测试研究   摘要摘要:验收测试的重点就是客户。在一个软件项目中,通常多个客户有着不同的观点,这在测试中必须予以考虑。使用验收测试,其目的不仅是确保系统正常工作,而且是确保该应用程序能够满足客户的需求。探讨实现验收测试的方法,以及可以在验收测试中引入的各种技术。   关键词:软件测试;验收测试;自动化测试   中图分类号:TP306文献标识码:A文章编号文章编号2013)0010003602   作者简介:董宁(1982-),男,硕士,武汉软件工程职业学院讲师,研究方向为软件技术和职业教育。   0引言   良好的软件测试方法可以确保软件项目正确运作,然而,除了软件之外,还有一个重要的却往往被忽视的角色——客户。在软件项目开发的每个阶段考虑客户需求是系统获得成功非常重要的一点。   1软件项目验收测试概述   验收测试一直以来被用于不同的技术和方法中,有时指的是同一个概念,有时也可能指不同的测试形式。所以必须给本文探讨的验收测试相关概念一个明确的定义:①验收测试:包括客户验收测试、用户验收测试和功能测试;②可执行规范:即验收测试规范,可运行测试来验证项目实现是否与所定义的规范相匹配;③客户:系统的最终用户;④系统:所开发的软件项目;⑤验收:满足功能和非功能需求;⑥功能需求:该系统必须执行的功能和动作,如显示条目、用户身份验证等;⑦非功能需求:系统的相关因素,如性能、可扩展性和安全性;⑧黑盒:不依赖于系统内部细节的测试过程,如输入数据、检测输出结果。   这些术语并不足以对如何将验收测试应用于软件项目开发生命周期进行一个准确的描述。验收测试并不是新概念,但它像测试驱动开发TDD(Test Driven Development)一样,近几年来才得到关注和广泛使用,并出现了一些相关的测试工具和架构。接下来看一下验收测试是如何应用于软件开发生命周期的。   验收测试往往被用于由极限编程、敏捷原则和Scrum迭代模型指导开发的软件项目中。出现这样的情况主要有两个原因。一是验收测试侧重于客户和软件所实现的功能向客户提供的价值,这与敏捷开发原则相一致,后者也是侧重于交付实际满足客户需求的软件。二是通过一套自动化验收测试,就可以确保该软件能够满足客户需求、确保在实现新功能的时候没有破坏任何旧功能。这意味着,可以将重点放在确保正在开发的功能是否与期望的相一致上面。   验收测试与敏捷开发过程结合是最有效的。在每一个迭代过程中,验收测试将保证整个团队集中于应用程序的具体部分,确保在单个迭代中软件从设计到测试都是完整的。   2软件项目验收测试方法   验收测试的编写和实现应该贯穿在软件项目开发的每个迭代过程中。下面将基于Scrum迭代模型,实现一个包含验收测试的软件项目迭代过程。   在一个标准的Scrum迭代过程开始的时候,开发团队接受了具有最高优先级的待完成的产品需求列表,该产品需求应当分解为多个用户使用情景,每个用户使用情景定义一个系统需求。一个用户使用情景通常由两部分组成,用来描述用户需要的系统部分。如一个典型的用户使用情景可以被描述为“作为一名销售管理员,我想要能够查看信用卡信息,从而能够在本地处理付款。”这个用户使用情景描述了操作和与操作相关的用户,对要求实现的内容给出清晰的说明。   一旦选定一个用户使用情景后,开发团队就应当对他们要实现的内容有一个很好的认识,这一阶段应该与客户和产品所有者进行交谈,确定实际需要什么并扩展初始用户使用情景,并基于这一信息和团队内部的其他技术人员讨论来创建任务,在这一阶段,就应当编写验收测试了。了解试图实现的用户使用情景,就可以清楚地认识到完成这些实现所需的任务,也能够知道如何验证这一应用程序是否满足客户需求。验收测试并不是低层次的单元测试,而是侧重于验证基于用户使用情景的客户需求是否正确实现的高层次测试。确定了用户使用情景后,在将其分解为任务之前,定义验收测试是非常必要的。当所有的验收测试都通过的时候,就完成了系统。这使得任务分解更加侧重于需要完成的事。在这一阶段,客户和产品所有者应当协助开发团队定义验收测试,确保软件需求满足客户的期望。   良好验收测试可以让客户在开始编码之前清楚地知道当前阶段软件项目将实现的功能。客户清楚地定义了需求,开发团队可以在实际编码前,提出任何与需求相关的问题并与客户敲定细节。使用验收测试指导和验证,可以使客户清楚地知道他们想要什么,也可以使软件项目开发团队清楚地知道他们计划交付什么。   但是,客户往往不懂技术,无法理解任何为验证需求所开发的测试代码。因此,验收测试在编写时,不要向客户展示代码,而是使用语言描述验证测试,也就是以几句话定义高层次观点。验收测试有多种编写形式,如Given、When、Then

文档评论(0)

lmother_lt + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档