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个字符的邮政编码,如下图所示。对该文本框应该进行