第七章 软件自动化测试.pptVIP

  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文档。上传文档
查看更多
. 7.2.3测试工具的运用及作用 针对这些在单元测试阶段需要做的工作,各种用于单元测试的工具就产生了。典型的单元测试工具有以下几类:动态错误检测工具、性能分析工具、覆盖率统计工具。 ①动态错误检测工具 动态错误检测工具,用来检查代码中类似于内存泄露、数组访问越界这样的程序错误。程序功能上的错误比较容易发现,因为它们很容易表现出来。但类似于内存泄露这样的问题,因为在程序短时间运行时不会表现出来,所以不易发现。遗留有这样问题的单元被集成到系统后,会使系统表现的极不稳定。 ②性能分析工具 性能分析工具,记录被测程序的执行时间。小到一行代码、一个函数的运行时间,大到一个exe或dll文件的运行时间,性能分析工具都能清晰的记录下来。通过分析这些数据,能够帮助我们定位代码中的性能瓶颈。 ③覆盖率统计工具 覆盖率统计工具,统计出我们当前执行的测试用例对代码的覆盖率。覆盖率统计工具提供的信息,可以帮助我们根据代码的覆盖情况,进一步完善测试用例,使所有的代码都被测试到,保证单元测试的全面性。 第七章 软件自动化测试 7.2.3测试工具的运用及作用 动态错误检测工具、性能分析工具、覆盖率统计工具的运行机理是:用测试工具对被测程序进行编译、连接,生成可执行程序。在这个过程中,工具会向被测代码中插入检测代码。然后运行生成的可执行程序,执行测试用例,在程序运行的过程中,工具会在后台通过插入被测程序的检测代码收集程序中的动态错误、代码执行时间、覆盖率信息。在退出程序后,工具将收集到的各种数据显示出来,供我们分析。 目前被普遍使用的单元测试工具中有Compuware公司的NuMega DevPartner Studio,Rational 公司的Rational Suite Enterprise。这些软件产品都是一个工具套件,其中包含了我们前面所讨论的动态错误检测工具、性能分析工具、覆盖率统计工具等。 第七章 软件自动化测试 7.2.3测试工具的运用及作用 (4)功能测试工具 在软件产品的各个测试阶段,通过测试发现了问题,开发人员就要对问题进行修正,修正后的软件版本需要再次进行测试,以验证问题是否得到解决,是否引发了新的问题,这个再次进行测试的过程,称为回归测试。 由于软件本身的特殊性,每次回归测试都要对软件进行全面的测试,以防止由于修改缺陷而引发新的缺陷。进行过回归测试人都会深有体会,回归测试的工作量是很大的,而且也很乏味,因为要将上一轮执行过的测试原封不动的再执行一遍。设想一下,如果能有一个机器人,就像播放录影带一样,忠实的将上一轮执行过的测试原封不动的在软件新版本上重新执行一遍,那就太好了。这样做,一方面,能保证回归测试的完整、全面性,测试人员也能有更多的时间来设计新的测试用例,从而提高测试质量;另一方面,能缩短回归测试所需要的时间,缩短软件产品的面市时间。功能测试自动化工具就是一个能完成这项任务的软件测试工具。 功能测试自动化工具理论上可以应用在各个测试阶段,但大多数情况下是在确认测试阶段中使用。功能测试自动化工具的测试对象是那些拥有图形用户界面的应用程序。 第七章 软件自动化测试 7.1.5软件测试自动化的引入条件 1.对软件测试自动化的正确认识 自动化测试能大大降低手工测试工作,但决不能完全取代手工测试。完全的自动化测 试只是一个理论上的目标,实际上想要达到 100% 的自动化测试,不仅代价相当昂贵,而且操作上也是几乎不可能实现。一般来说,一个40--60% 的利用自动化的程度已经是非常好的了,达到这个级别以上将过大的增加测试相关的维护成本。 测试自动化的引入有一定的标准,要经过综合的评估,绝对不能理解成是测试工具简单 的录制与回放过程。 (1)自动化测试能提高测试效率,快速定位测试软件各版本中的功能与性能缺陷,但不会创造性的发现测试脚本里没有设计的缺陷。测试工具不是人脑,要求测试设计者将测试中各种分支路径的校验点进行定制;没有定制完整,即便事实上出错的地方,测试工具也不会发觉。因此,制订全面、系统的测试设计工作是相当重要的。 第七章 软件自动化测试 7.1.5软件测试自动化的引入条件 (2)自动化测试能提高测试效率,但对于周期短、时间紧迫的项目不宜采用自动化测试。推行自动化测试的前期工作相当庞大,将企业级自动化测试框架应用到一个项目中也要评估其合适性,因此决不能盲目的应用到任何一个测试项目中,尤其不适合周期短的项目,因为很可能需要大量的测试框架的准备和实施而会被拖跨。 (3)实施测试自动化必须进行多方面的培训,包括测试流程、缺陷管理、人员安排、测试工具使用等。如果测试过程是不合理的,引入自动化测试只会给软件组织或者项目团队带来更大的混乱;如果我们允许组织或者项目团队在没有关于应该如何做的任何知识的情况下实施自动化测试,那将肯定

文档评论(0)

浪漫唯美-文档菜鸟 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档