(3)确认测试(有效性测试) 又称有效性测试。组装测试结束后,得到的是一个完整的软件 系统。这时需要进行最后的测试,即有效性测试。有效性测试 阶段主要进行的测试有:有效性测试(黑盒测试)、软件配置 复查、测试和β测试以及验收测命。数 (4)系统测试 系统测试是指将经过测试后的软件系统与计算机硬件、外设、 其他支持软件以及其他系统元素一起进行测试。测试内容主要 有:功能测试、吞吐量测试、可用性测试、保密性测试、安装 测试、可恢复性测试、资料测试和程序测试
(3)确认测试(有效性测试) 又称有效性测试。组装测试结束后,得到的是一个完整的软件 系统。这时需要进行最后的测试,即有效性测试。有效性测试 阶段主要进行的测试有:有效性测试(黑盒测试)、软件配置 复查、α测试和β测试以及验收测试。 (4)系统测试 系统测试是指将经过测试后的软件系统与计算机硬件、外设、 其他支持软件以及其他系统元素一起进行测试。测试内容主要 有:功能测试、吞吐量测试、可用性测试、保密性测试、安装 测试、可恢复性测试、资料测试和程序测试
2、常用的测试方法 常用的测试方法有黑盒测试和白盒测试两种 (1)白盒测试 白盒测试又称结构测试或逻辑驱动测试。所谓“白盒”是指 将对象看作一个打开的盒子,测试人员可利用程序内部的逻辑 结构及有关的信息来设计或选择测试用例。 白盒测试主要考虑的是测试用例对程序内部逻辑的覆盖程度 测试用例对程序的覆盖程序从低到高分别为:语句覆盖,岁 而不考虑程序的功能。 定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖。 需要说明的是,上述各种覆盖准则的侧重点不同,覆盖程度 也不同。但它们共同的是:任何一种覆盖都不能做到完全测试e
2、常用的测试方法 常用的测试方法有黑盒测试和白盒测试两种。 (1)白盒测试 白盒测试又称结构测试或逻辑驱动测试。所谓“白盒”是指 将对象看作一个打开的盒子,测试人员可利用程序内部的逻辑 结构及有关的信息来设计或选择测试用例。 白盒测试主要考虑的是测试用例对程序内部逻辑的覆盖程度, 而不考虑程序的功能。 测试用例对程序的覆盖程序从低到高分别为:语句覆盖、判 定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖。 需要说明的是,上述各种覆盖准则的侧重点不同,覆盖程度 也不同。但它们共同的是:任何一种覆盖都不能做到完全测试
(2)黑盒测试 黑盒测试又称功能测试或数据驱动测试 在这种测试方法中,程序对测试者是完全透明的。测试者 不考虑程序的内部结构和特性,就好像把程序看作一个不能打 开的盒子,只根据程序的需求规格说明中的程序功能或程序的 外部特性来设计测试用例。 黑盒测试的方法包括:等价分类法、边缘值分析法、因果 图法和错误推测法。 测试方法还有回归测试、强度测试等等。每一种测试方法 都各有所长,在实际测试中应综合使用。一般来讲,通常用黑 盒法设计基本的测试方案,再利用白盒法做必要的补充
(2)黑盒测试 黑盒测试又称功能测试或数据驱动测试。 在这种测试方法中,程序对测试者是完全透明的。测试者 不考虑程序的内部结构和特性,就好像把程序看作一个不能打 开的盒子,只根据程序的需求规格说明中的程序功能或程序的 外部特性来设计测试用例。 黑盒测试的方法包括:等价分类法、边缘值分析法、因果 图法和错误推测法。 测试方法还有回归测试、强度测试等等。每一种测试方法 都各有所长,在实际测试中应综合使用。一般来讲,通常用黑 盒法设计基本的测试方案,再利用白盒法做必要的补充
1.33软件质量保证 1、评审与测试 评审和测试都是质量保证的重要活动。 验证:我们制造产品的步骤正确吗? 确认:我们制造的是正确的产品吗? 程序正确性证明 程序正确性证明就是要通过数学的方法,证明程序具有某 些需要的性质。通过多年的研究,现已提出了一些有用的方 法和技术,其中包括输入—输出断言法、最弱前置条件法、 结构归纳法纪等几种常用的方法 如果说程序测试是为了证明程序有错,则程序正确性的证 明正好相反,是为了证明程序能够完成某些预定的功能。现 有的证明程序正确性的技术与工具包括已研制出来的程序正 确性自动证明器,仅适用于很小的程序。要解决大程序的正 确性证明,还需要进行大量的工作
1.3.3 软件质量保证 1、评审与测试 评审和测试都是质量保证的重要活动。 验证:我们制造产品的步骤正确吗? 确认:我们制造的是正确的产品吗? 2、程序正确性证明 程序正确性证明就是要通过数学的方法,证明程序具有某 些需要的性质。通过多年的研究,现已提出了一些有用的方 法和技术,其中包括输入——输出断言法、最弱前置条件法、 结构归纳法纪等几种常用的方法。 如果说程序测试是为了证明程序有错,则程序正确性的证 明正好相反,是为了证明程序能够完成某些预定的功能。现 有的证明程序正确性的技术与工具包括已研制出来的程序正 确性自动证明器,仅适用于很小的程序。要解决大程序的正 确性证明,还需要进行大量的工作
14软件重用 重用( Reuse)是软件过程的一部分。为了快速做出复杂的应用, 重用是一条捷径。此外,重用也是当今软件系统的重要特征。重 用指在一个软件项目中直接使用以前项目中的产物,而非重用某 些工具,也就是把以前做过的东西纳入到新项目中。 1.重用过程 面向对象的语言本身就提供了重用机制,如封装、继承、模板 等。技术上可以制成可重用构件(不仅封装数据还封装行为,成 为独立的可重用对象),这样可以大幅度提高开发效率。 重用的真正价值在于方案、决策的重用。利用集成技术将构件按 可重用模式装入可重用框架(相当于建筑中的梁、柱组成的房梁 构成一组装式软件过程。 从代码重用到构件重用到设计重用到过程重用(域工程)、从初 创到成长到成就到实用。现代的软件平台,或多或少都提供了重 用机制
1.4 软件重用 重用(Reuse)是软件过程的一部分。为了快速做出复杂的应用, 重用是一条捷径。此外,重用也是当今软件系统的重要特征。重 用指在一个软件项目中直接使用以前项目中的产物,而非重用某 些工具,也就是把以前做过的东西纳入到新项目中。 1.重用过程 面向对象的语言本身就提供了重用机制,如封装、继承、模板 等。技术上可以制成可重用构件(不仅封装数据还封装行为,成 为独立的可重用对象),这样可以大幅度提高开发效率。 重用的真正价值在于方案、决策的重用。利用集成技术将构件按 可重用模式装入可重用框架(相当于建筑中的梁、柱组成的房梁) 构成一组装式软件过程。 从代码重用到构件重用到设计重用到过程重用(域工程)、从初 创到成长到成就到实用。现代的软件平台,或多或少都提供了重 用机制