- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章 軟件测试
第六章 软件测试
§6.1 基本概念
软件开发过程必须伴有质量保证活动。
软件测试是软件质量保证的关键元素,代表了规约、设计和编码的最终检查。
有关测试的思考题
软件测试是一门非常重要的学科,主要研究内容是什么?
软件测试需要什么样的专业基础
软件质量到底是什么?
测试的目标是什么?
开发一个测试系统之前你是否明白:
可以测试什么?
应该测试什么?
最终能够测试什么?
测试的目标是什么?
软件产品最大的成本是检测软
件错误、修正软件错误的成本。
在整个软件开发中,测试工作量
一般占30%~40%,甚至≥50%。
在人命关天的软件(如飞机控制、核反应堆等)测试所花费的时间往往是其它软件工程活动时间之和的三到五倍
软件测试背景
软件是人编的—所以不完美
实例:
1994-1995,迪斯尼的狮子王系统不支持问题
Intel的pentium处理器
1994年浮点除法缺陷
200年8月28日,1.13MHZ处理器一个可能导致运行程序被挂起的执行指令问题
1999年12月3日,美国航天局火星极地登陆飞船失踪
1991年爱国者导弹防御系统系统时钟错误积累造成跟踪系统失去精确度
千年虫,世界各地解决2000年错误超过数亿美元
软件测试的认识的发展
人们对软件测试认识的五个阶段:
阶段1 — 测试=调试
阶段2 — 测试是证明软件正确
阶段3 — 测试是发现软件中错误
阶段4 — 测试是减小软件不工作的风险
(是度量软件质量要素的过程)
阶段5 —测试可产生低风险的软件的一
种认识上的训练
三个盲人和一头大象:你能够为质量 下定义吗?
质量管理领域权威人物J.M.Juran将质量
定义为“决定产品性能和‘满意程度’的
特征”, 测试注重于产品的满意度。
测试应针对这样一种情况:
软件产品在一些特定的范围内不能满足客户的合理要求。
通过测试过程可以评定质量风险(可能的错误),了解被测试系统中存在的错误模式(观察到的错误症状)。
质量控制技术
质量控制活动分类
开发方法学
配置管理
验证技术
评 审
正确性验证
性能调试
组件测试
集成测试
系统测试
原子事务
模块冗余性
检 错
质量控制
避免错误
容 错
调 试
测 试
软件质量问题
以软件测试为中心的软件质量保障技术
软件 静态测试技术
质量 软件度量技术
控制 动态测试技术
技术 配置管理技术
修改控制与管理技术
软件测试是保证软件质量,提高
软件可靠性的关键
软件测试的目标
(1)预防错误: 几乎不可实现
(2)发现错误
6.1.1 测试的目的与地位
G.J.Myers在软件测试技巧中认为:
1.测试是为了寻找错误而运行程序的过程。
2.一个好的测试用例是指很可能找到迄今为止尚未发现的错误的测试。
3.一个成功的测试是揭示了迄今为止尚未发现的错误的测试。
E.W.Dijkstra 指出:
“程序测试能证明错误的存在,但不能证明错误不存在.”
测试的目的是发现程序中
的错误,是为了证明程序有错,
而不是证明程序无错.
把证明程序无错当作测试目的不仅是不正确的, 完全做不到的,而且对做好测试没有任何益处,甚至是十分有害的.
软件测试要设法使软件发生故障,暴露软件错误
测试的“成功”与“失败”
能够发现错误的测试是成功的
测试,否则是失败的测试。
“测试的目的是说明程序正确地执行它应有的功能” 这种说法正确吗?
例:程序Triangle,输入三个整数,表示一个三角形的三个边长,该程序产生一个结果,指出该三角形是等边三角形、等腰三角形还是不等边三角形。
为说明其能正确执行它的功能,可使用“测试用例”(3,4,5),(5,5,6),(6,6,6),
程序都能给出正确结果,是否就可认为程序是正确的?
难以说清的软件缺陷
古谚: “一片树叶飘落在森林中没有人听见,
谁能说它发出了声音?”
由于不能报告没有看见的问题,因此,
没有看见就不能说存在软件缺陷
如果软件中的问题没有人发现,那么它算不算软件缺陷?”
只有看到了,才能断言软件缺陷,尚未
发现的软件缺陷只能说是未知软件缺陷。
眼
见
为
实
6.1.2 测试原则
(1)所有的测试都应追溯到用户需求
最严重的错误(从用户角度)是那些导致软件无法满足需求的错误。
程序中的问题根源可能在开发 前期的各阶段解决、纠正错误也必须追溯到前期工作。
文档评论(0)