[软件工程12.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文档。上传文档
查看更多
[软件工程12

Chap.11 软件测试 11.1 引言 11.1.1 一个测试例子 11.1.2 软件测试的目标与原则 11.1.3 测试阶段的信息流向 11.2 软件测试方法 11.1 引 言 软件测试是保证软件质量的关键步骤,也是提高软件可靠性的重要手段,因此它是软件工程中的重要组成部分之一。测试的内容包括两个方面,即文档和程序。 11.1 引 言 软件测试通常要进行单元测试和综合测试。前者是指在写出各个单元之后对它的测试,而后者则是指在系统各单元设计、测试完毕的基础上,将它们组合成一个完整的系统进行功能、需求、规格等方面的测试。测试方法分两种,一种是逻辑性测试,其测试内容主要是根据设计规格书检查各单元的各条路径。其测试手段可用语句覆盖、判定覆盖、条件覆盖和条件组合覆盖等方法。 11.1 引 言 另一种是功能性测试,其测试内容主要是根据需求规格书,检查程序所能完成的功能,即应满足的性能等。其测试手段可用等价划分和边界值分析法等。 实施测试时,应注意收集有关的数据,为软件维护和可靠性评估提供重要依据,这也在一定程度上说明了软件的整体质量。 11.1 引 言 软件的技术必须理论与实践相结合。尽管测试与程序正确性证明技术相比是一种不完善的技术,但目前程序正确性技术还没有达到大规模软件验证的实用阶段。另外,正确性证明过程十分复杂,本身也可能发生错误,所以到目前为止软件质量主要靠软件测试来保证。遗憾的是Dijkstra关于测试讲了一句极其精辟的话,“测试只能证明程序有错,不能保证程序无措。”所以有必要进一步对测试技术的理论和实践进行研究,向着测试的自动化方向发展。 11.1.1 一个测试例子 在正式讨论本章的内容之前,先看一个测试方面的简单例子。 输入三个整数a、b、c,它们表示三角形的三条边的长度,输出结果应能说明三角形是等腰三角形,等边三角形还是不等边三角形。 这是一个很简单的程序,有一定经验的程序员可能认为测试这个程序异常简单,便可立即写出若干个测试数据,如 11.1.1 一个测试例子 a=3,b=4,c=5 a=3,b=3,c=4 a=3,b=3,c=3 …… 对于上面给出的这些测试数据,若程序都能给出正确的结果,由此断言程序是正确的,所下的结论还为时过早,因为给出的这些测试数据仅仅只能说明一部分的问题,还有大量需要测试的问题还未能涉及到。请读者回答下面的问题。 11.1.1 一个测试例子 合理的不等边三角形(输入数据2,3,5或2,5,10等不能算这一类)。 合理的等边三角形(输入数据0,0,0等不能算这一类)。 合理的等腰三角形(输入数据3,3,6等不能算这一类)。 等腰三角形的三种排列次序(如3,3,4;3,4,3和4,3,3)。 三个正整数,其中两个之和等于第三个。 11.1.1 一个测试例子 第5种情况的三种排列次序(如1,2,3;1,3,2和3,1,2等)。 三个正整数,其中两个之和小于第三个。 第7种情况的三种排列次序(如1,2,4;1,4,2和4,1,2等)。 输入数据含有零。 输入数据含有负数。 输入数据含有非整数。 三个数均为零。 11.1.1 一个测试例子 13.输入数据中含有字符(如只有两个输入数)。 14.对于上述每种情况,除了考察输入数据情况之外,还应考虑预期的输出结果。 11.1.1 一个测试例子 即使是满足上面条件的一组输入数据也不能完全保证能够测出所有可能的错误。而实际情况表明,对于一些较有经验的程序员,往往也只能考虑到其中的六、七种情况。由此看来,要测试上述简单程序也不是一件容易的事情。这不是故弄玄虚。而是分析了某些程序员编写的程序之后,根据一些常见的错误列出的。测试有实际应用价值的软件系统,特别是大型软件系统,其复杂性就大得多了。 11.1.2 软件测试的目标与原则 G.Myers在他的优秀著作《软件测试技巧》一书中,精辟的阐述测试的目标或定义: 1.程序测试是为了发现错误而执行程序的过程; 2.好的测试方案是极可能发现迄今为止尚未发现的错误; 3.成功的测试能够发现以前尚未发现的错误。 11.1.2 软件测试的目标与原则 1.预先确定测试结果。如果预先无法肯定预期的测试结果,容易把那些似是而非的东西当成正确的结果。一个测试方案必须由两部分组成,一部分

文档评论(0)

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

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

1亿VIP精品文档

相关文档