下载此文档

第七章软件测试.doc


文档分类:IT计算机 | 页数:约23页 举报非法文档有奖
1/23
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/23 下载此文档
文档列表 文档介绍
第七章软件测试
编码完成之后,就是对源程序进行测试。软件测试是一项“劳民伤财”的工作,统计表明,开发大规模的软件,有40%以上的精力是耗费在软件测试上(40-20-40规则,Myers认为软件测试占大约50%的项目时间和超过50%总成本)。为了保证软件的正确可靠、为了防患于未然,无论怎样强调软件测试的重要性,都不过分。
关于软件测试,曾有种种似是而非的说法,众多的术语和测试技术,也常使我们眼花缭乱。在这里我试尝给大家勾画出一个清晰的逻辑轮廓。
基本概念
软件测试的目的(与地位)
《软件测试技巧》,他在书中说道:“测试是为了发现错误而执行程序的过程。”
:“程序测试能证明错误的存在,但不能证明错误不存在。”
在这里,他们明确指出:测试的目的是发现程序中的错误,是为了证明程序有错,而不是证明程序无错。(其实你也证明不了)
在软件开发过程中,分析、设计、编码等工作都是建设性的,唯独测试带有“破坏性”,因为它抱着“吹毛求疵”的目的,明确宣布要在程序中“找岔子”。他们认为这种吹毛求疵的态度是至关重要的(态度决定一切!)。如果你是为了证明程序无错而去进行测试,错误就可能在你的眼皮底下漏过,反之,只要你抱着证明程序有错的目的去测试,就会尽心尽力去找程序中的错误。
根据Myers的说法,测试又是一个“(在计算机上)执行程序的过程”。分析和设计阶段都要对文档进行技术审查和管理复审,源程序完成后,也要进行代码复审(code review)。这些审查对减少软件错误有重要作用,但都不能代替在计算机上进行的测试,,测试可视为分析、设计、编码3个阶段的“最终复审(ultimate review)”,可见测试在软件质量保证中的重要地位。
现在我们干脆把Myers的:“程序测试是为了发现错误而执行程序的过程。”作为软件测试的定义。
另一个与测试密切相关的活动叫纠错(debugging),我们也常常说起“纠错和调试”。
[纠错和调试]测试的目的是发现错误,纠错则是为了确定错误的性质,并且加以纠正。因此,软件测试其实是这样一个过程:
测试——纠错——测试——纠错——…………, 这种边测试边纠错的活动,常常借助于一种称为调试程序(debugging routine)的专用工具,所以也有人把纠错称为调试。
软件测试的方法和技术
广义地说,软件测试不仅指在计算机上进行的测试(机器测试),也应包括用人工方式进行的代码复审(人工测试),下面我们列出这两类测试所采用的方法和技术。
[注]
(1)机器测试和人工测试
程序通过编译后,先要经代码复审,然后再进行机器测试。机器测试是用设定的测试数据(test data)执行被测程序的过程,故又称为动态测试(dynamic testing)。代码复审采用人工的方式进行,目的在于检查程序的静态结构,找出编译不能发现的错误。经验表明,组织良好的代码复审,可以发现程序中30%到70%的编码和逻辑错误,从而加快动态测试的进程,提高整个测试的效率。
根据Myers的研究:人工测试和机器测试是互补的。而且,机器测试只能发现错误的症状,人工测试一旦发现了错误,也就同时确定了错误的位置与性质。人工测试并不是可有可无的,或是为了节约计算机机时而采取的权宜之计,它是机器测试的准备,也是测试中不可缺少的环节。
(2)白盒测试和黑盒测试
动态测试是一个包括:①设计“测试用例”→②执行被测程序→③分析测试结果并发现错误的过程。
[测试用例]以发现程序的错误为目的,而精心设计的一组测试输入数据,以及用这组数据执行被测程序时所期望的输出结果。
测试用例={ 输入数据+ 期望结果}
【注】其中{ }表示重复
在这一过程中,毫无疑问①设计“测试用例”是最关键!这是因为只有合理设计的“测试用例”,才可能最大限度地发现程序中的错误,从而有效地完成测试任务。
我们按照在设计“测试用例”时,是否涉及程序的内部结构,把动态测试分为:“白盒测试”和“黑盒测试”。
(3)穷举测试和选择测试
能不能通过动态测试,发现程序中的所有错误呢?
人们自然地想到:应该让被测程序在一切可能的输入情况下执行一遍,这就是所谓的“穷举测试”。
那么穷举测试可能吗?请看:
[试对一个“C++编译器”进行黑盒穷举测试] 一方面要编写出所有能够想象出来的
合法的C++程序让它编译,另一方面又要编写出一切不合法的C++程序,看它能否指出程序的错误。显而易见,合法与不合法的C++程序的数量都是无穷的,因此,用黑盒测试方法进行穷举测试是不可能的。
[试对下图所示的程序进行白盒穷举测试]
[注]51+5

第七章软件测试 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数23
  • 收藏数0 收藏
  • 顶次数0
  • 上传人w447750
  • 文件大小129 KB
  • 时间2018-07-02