《软件测试》笔记.doc
- 格式:pdf
- 大小:764.91 KB
- 文档页数:10
1. 软件缺陷如何影响我们的生活
2. 软件缺陷是什么,为什么会出现
只有符合下列5个规则才能叫软件缺陷 1. 软件未达到产品说明书标明的功能
2. 软件出现了产品说明书不会出现的错误
3. 软件功能超出产品说明书指明的范围
4. 软件未达到产品说明书虽未指出但应达到的目标
5. 软件测试员认为软件难以理解、不易使用、运行速度缓慢,或者最终用户认为不好 导致软件缺陷最大的原因是产品说明书;软件缺陷的第二大来源是设计方案。 3. 软件测试者是谁,职责是什么
软件测试员的目标是发现软件缺陷。
软件测试员的目标是找出软件缺陷,尽可能早一些。
软件测试员的目标是找出软件缺陷,尽可能早一些,并确保其得以修复。(最终定义) 区别:软件质量评判人员的主要职责是创建和加强促进软件开发并防止软件缺陷的标准和方
法。 Quiz:
1. 在千年虫例子中,Dave有错误吗?
2. 判断:公司或者开发小组如何称呼软件问题很重要。× 3. 仅仅测试程序是否按预期方式运行有何错误?
4. 产品发布后修复软件缺陷比项目开发早期这样做的费用要高出多少?
5. 软件测试员的目标是什么?
软件测试员的目标是找出软件缺陷,尽可能早一些,并确保其得以修复。(最终定义) 6. 判断:好的测试员不懈追求完美。× 7. 阐述产品说明书为什么通常是软件产品中制造软件缺陷的最大来源。
1. 构成软件产品的主要部分。
代码、帮助文件、用户手册、样本和示例、标签和帖子、产品支持信息、图标和标志、错误信息(别忘了测试错误提示信息)、广告和宣传材料、安装、说明文件等 2. 制作软件产品的人和技术。
人:项目管理员(编写产品说明书)、程序管理员(管理进度)、监制人(进行重大决策和取
舍);设计师、系统工程师;程序员、开发人员、代码制作者;测试员、质量评判员;技术
作者、用户助手、用户培训专员、手册编写人员、文案专员;结构管理员、制作人员等 3. 软件从构想到最终产品的过程。
从最初构思到公开发行软件产品的过程称为软件开发模式。 4种最常用的模式:大棒模式、边写边改模式、流水线模式、螺旋模式。
Quiz:
1. 说出在程序员开始编写代码之前有哪些任务要完成? 2. 不得更改的正规产品说明书有何缺点?
3. 软件开发大棒模式有何显著优点?
4. 采用边写边改模式时,如何得知软件准备分布?
5. 流水模式为什么不好用?
6. 软件测试员为什么最喜欢螺旋模式?
1. 软件为什么永远不会完美
在现实生活中,几乎看不到完全采用螺旋模式的软件工程,看不到完全符合客户要求的详细产品说明书。
测试无法显示潜伏的软件缺陷。 2. 软件测试为什么不仅是技术问题
3. 软件测试员的常用术语 未知软件缺陷(尚未发现的软件缺陷);精确/准确、验证(保证软件符合产品说明书的过程)
/合法性检查(保证软件满足用户要求的过程)、质量/可靠性、测试/质量评判(QA)
Quiz:
1. 假定无法完全测试某一程序,在决定是否应该停止测试時要考虑哪些问题? 2. 启动Windows计算器程序,输入5,000-5=(逗号不能少),观察结果。这是软件缺陷
吗?为什么? 3. 假如测试飞行之类的模拟游戏,精度和准确度哪一个更值得测试?
4. 有没有质量很高但可靠性很差的产品?请举例说明
5. 为什么不可能完全测试程序? 6. 假如周一测试软件的某一功能,每小时发现一个新的软件缺陷,你认为周二将会以什么
频率发现软件缺陷?
1. 什么是黑盒子和白盒子测试?
2. 静态测试和动态测试有何区别?
静态测试是指测试不运行的部分——只是检查和审阅;动态测试指通常意义上的测试——运
行和使用软件。 静态黑盒子测试,测试产品说明书(产品说明书是书面文档,而不是可执行程序)。 3. 审查产品说明书有哪些高级技术?
设身处地为客户着想
研究现有的标准和规范
审查和测试同类软件 4. 在详细审查产品说明书时应注意哪些问题?
5. 底层测试技术
产品说明书属性检查清单
产品说明书用语检查清单 6. www.mfagan.con(可了解更高级的审查产品说明书技术) Quiz:
1. 软件测试员可以对产品说明书进行白盒子测试吗?
可以!!!!!!!!!!! 2. 试举一些Mac或Windows标准或规范的例子。
3. 指出下述产品说明书中的错误:当用户选择Compact Memory选项时,程序将邮件列表数据压缩到可能与Huffman解析矩阵方法同样大小的尺寸。 4. 解释软件测试员应该担心下述产品说明的哪些内容;尽管使用的模拟连接通常不超过一
百万个,但是该软件最多允许一亿个。
1. 动态黑盒子测试是什么?
不深入代码细节的软件测试方法称为动态黑盒子测试。动态是因为程序正在运行。
测试工作就是进行输入、接受输出、检查结果;定义测试案例(指进行实验用的输入,以及测试软件用的程序)。 2. 如何通过等价分配减少测试案例的数量?
选择测试案例的方法是等价分配,有时称为等价划分。
等价划分指分步骤地把过多(无限)的测试案例减小到同样有效的小范围的过程。
等价类别/等价区间:指测试相同目标或者暴露相同软件缺陷的一组测试案例。 在寻找等价区间时,想办法把软件的相似输入、输出、操作分成组。这些组就是等价区间。 3. 如何辨别故障边界条件?
4. 使用良好数据值减少软件缺陷?
5. 如何测试软件状态和状态转换?
6. 如何使用重复、压迫和重负的方法找出软件缺陷? 重复测试是不断执行同样的操作,以看内存是否不足。如果计算机内存被分配进行某些操作,
但是操作完成時没有完全释放,就会产生一个常见的软件问题,结果是最后程序用尽了它赖
以生存的空间。
压迫测试是使软件在不理想的条件下运行——内存小、磁盘空间小、CPU速度慢、调制解
调器速率低等等,用于观察软件对外部资源的要求和依赖的程度。 重负测试是让软件最大限度地工作,让它不堪重负。
重复、压迫和重负测试应联合使用,同时进行。 7. 软件缺陷的秘密藏身之处?
Quiz:
1. 判断:在没有产品说明书和需求文档的条件下可以进行动态黑盒子测试。√ 2. 如果测试程序向打印机输送打印内容,应该选用哪些通用的失败测试案例?
3. 启动Windows写字板程序,并从File菜单选取Print命令,打开如下图所示的对话框。
左下角显示的Print Range(打印区域)特性存在什么样的边界条件?
4. 假设有一个文本框要求输入10个字符的邮政编码,如下图所示。对该文本框应该进行
怎样的等价划分?
5. 判断:访问程序的所有状态以保证遍布各种状态之间的转换。×
6. 绘制状态转换图有多种不同的方法,但是它们都具有相同的三个要素是什么?
7. Windows计数器程序的初始状态变量有哪些?
8. 当设法显露竞争条件软件缺陷時,要对软件进行何种操作? 9. 判断:在进行压迫测试的同时进行重负测试是不合情理的。×
1. 静态白盒子测试的好处。
静态白盒子测试是在不执行的条件下有条理地仔细审查软件设计、体系结构和代码,从而找
出软件缺陷的过程。有时称为结构分析。 好处1:尽早发现软件缺陷,以找出动态黑盒子测试难以揭示或遇到的软件缺陷。
好处2:为接受该软件测试的黑盒子测试员能够应用的测试案例提供思路。 2. 各种类型的静态白盒子综述。
3. 编码规范和标准。
4. 如何从整体审查代码错误。 Quiz:
1. 说出进行静态白盒子测试的几个好处。
2. 判断:静态白盒子测试可以找出遗漏之处和问题。√
3. 正式审查由哪些关键要素组成?
4. 除了更正式之外,经验与其他审查类型有什么重大差别?
5. 如果要求程序要8个字符并且首字母大写的形式命名变量,那么这是标准或者规范吗?
6. 你会采用本章的代码审查清单作为项目小组验证代码的标准吗?
1. 什么是动态白盒子测试?
4个基本测试技术(静态黑盒子、动态黑盒子和静态白盒子<
检查程序代码>&动态白盒子测试)之一 2. 调试和动态白盒子测试之间的区别? 动态白盒子测试的目标是寻找软件缺陷,调试的目标是修复他们。 3. 单元和集成测试是什么?
4. 如何测试底层功能?
5. 底层测试所需的数据范围?
6. 如何强制软件以某种方式运行? 7. 衡量测试完整性的各种方法。
Quiz:
1. 为什么了解了软件的工作方法会影响测试的方式和内容?
2. 动态白盒子测试和调试有何区别?
3. 在大棒软件开发模式下几乎不可能进行测试的两个原因是什么?如何解决?
4. 判断:如果匆忙开发产品,就可以跳过模块测试而直接进行集成测试。×
5. 测试存根和测试驱动有何差别?
6. 判断:总是首先设计黑盒子测试案例。√
7. 在本章描述的三种代码范围中,哪一种最好?为什么?
三种代码范围:程序语句和代码范围;分支范围;条件范围。
8. 白盒子测试最大的问题是什么?静态还是动态?
1. 为什么配置测试必不可少?
因为生产硬件毕竟要符合标准,使用按标准设计的硬件的软件就会毫无问题地正常运行。 2. 为什么配置测试可能是艰巨的任务?
3. 配置测试的基本方法。
4. 如何找到需要测试的硬件?
5. 为何不用台式机测试软件? 问题描述 问题类型
在玩游戏或者使用图形程序时,颜色突然变花或者无法拖动
某些窗口 显示适配器配置缺陷