《软件测试》[(美)Ron Patton]第一章阅读总结

第一章 软件测试的背景

1、臭名昭著的软件错误用例研究

1、迪士尼的狮子王(软件在大多数公众使用的系统中不能运行)
2、英特尔奔腾浮点除法缺陷(在进行精度要求很高的数学、科学和工程计算中会导致错误)
3、美国航天局火星极地登陆者号探测器(小组分开测试,错过了发现着地数据位是否置位的机会)
4、爱国者导弹防御系统(系统时钟过了14小时后跟踪系统不准确)
5、千年虫问题(存储空间小就压缩年份位数以为25年内会升级)
6、危险的预见(图片可以传播病毒只是时间问题)

2、什么是软件缺陷

1、软件失败的术语

故障、失败、缺点:确实严重的、甚至危险的情况
异常、事件、偏差:未按预料的运行,而不是全部失败
问题、错误、缺陷:最常用的术语

2、软件缺陷的官方定义

软件缺陷发生的五个规则:
1、软件未实现产品说明书要求的功能
2、软件出现了产品说明书指明不应该出现的错误
3、软件实现了产品说明书未提到的功能
4、软件未实现产品说明书虽未明确提及但应该实现的目标
5、软件难以理解、不易使用、运行缓慢或者——从测试员的角度看——最终用户会认为不好

3、为什么会出现软件缺陷

软件缺陷产生的原因:
编码
其他
产品说明书:罪魁祸首,说明书没写(说不出来就做不出来)或不够全面、经常更改、开发小组没有很好的沟通
设计:第二大原因,随意、易变、沟通不足

4、软件缺陷的修复费用

修复费用会随着时间(说明书、设计、编码、测试、发布)的推移出现惊人的增长

5、软件测试员究竟做些什么

软件测试员的目标是发现软件缺陷
软件测试员的目标是尽可能早地找出软件缺陷
软件测试员的目标是尽可能早地找出软件缺陷,并确保其得以修复

6、优秀的软件测试员应具备的素质

探索者、故障排除员(乐于处理最复杂的问题)、不放过任何蛛丝马迹(打破砂锅问到底)、具有创造性、追求完美者、判断精确、注重策略和外交、善于说服

小测验

1、千年虫中,Dave有错吗?
如果Dave是个好程序员,他应对这个“显然的”疏忽产生疑问而不是仅仅将程序设计到只能有效工作到1999年。由于他没有这样做,软件测试员就应测试并发现该缺陷,再由开发小组确定是否修正。
2、公司或开发小组用来称呼软件问题的术语很重要?
错,使用什么术语能反映小组的个性及其寻找、报告和确定问题的方法。
3、仅仅测试程序是否按预期方式运行有何问题?
最多只能算测试问题的一半,用户不一定遵守规则,软件测试员需证实不按操作有何后果。此外,如果测试员进行测试没有打破砂锅问到底到底态度就是遗漏某些软件缺陷。
4、产品发行后修复软件缺陷比项目开发早期这样做的费用要高出多少?
10倍以上
5、软件测试员的目标是什么?
尽可能早的找出软件缺陷,并确保其得以修复。
6、好的测试员知道何时完美无法企及,何时达到“够好”。
7、给出理由说明产品说明书为什么通常是软件产品中制造缺陷的最大来源?
产品说明书常常没写——不要忘了,说不出来就做不出来。其他原因是产品说明书虽然有,但是不完整,不停更改,或产品说明书内容没有同开发小组其他成员沟通过。
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值