其中软件配置:需求说明书、设计说明书和源程序。 测试配置:测试计划、测试工具、测试用例( Test case) 和测试驱动程序( Driver)、桩程序(Stub)等。 4、测试方法 (1)黑盒( Black-box)法 不考虑被测程序的内部结构和处理过程,只关心它的输 入和输出是否能达到预期结果,因此也称为功能性测试 (2)白盒(Back-box)法 使用更细致的测试策略,检査被测程序的内部逻辑 黑盒测试法与白盒测试法互为补充,在测试的不同阶段 使用以发现不同类型的错误 西安交通大学刘海
西安交通大学 刘海岩 6 其中软件配置:需求说明书、设计说明书和源程序。 测试配置:测试计划、测试工具、测试用例(Test case) 和测试驱动程序(Driver)、桩程序(Stub)等。 4、测试方法 (1)黑盒 (Black-box)法 不考虑被测程序的内部结构和处理过程,只关心它的输 入和输出是否能达到预期结果,因此也称为功能性测试。 (2)白盒(Black-box)法 使用更细致的测试策略,检查被测程序的内部逻辑。 黑盒测试法与白盒测试法互为补充,在测试的不同阶段 使用以发现不同类型的错误
测试用例如何设计? 是否考虑所有的数据域或所有的路径 穷尽测试( complete test)通常是不可能的。 例如:( Black-box) 程序要求输入3个整形数据。若字长16位,则各种可 能输入的排列组合共有 216×216×216≈3×1014 若程序执行一次需一毫秒,则对于所有合法输入的测试 大约需用一万年!还未包含测试输入非法数据的情况。 西安交通大学刘海
西安交通大学 刘海岩 7 测试用例如何设计? 是否考虑所有的数据域或所有的路径! 穷尽测试(complete test)通常是不可能的。 例如:(Black-box) 程序要求输入3个整形数据。若字长16位,则各种可 能输入的排列组合共有 2 16×2 16×2 16 ≈ 3×1014 若程序执行一次需一毫秒,则对于所有合法输入的测试 大约需用一万年!还未包含测试输入非法数据的情况
例:(Whte-box) 下图所示的程序中共有520≈1014条可能的执行通路,显 然,每条通路都执行一遍是不现实的 循环20次 即使每条路径都测试了,程序仍可能有错,如一个升 序程序编成了降序,穷尽测试也发现不了
西安交通大学 刘海岩 8 例:(White-box) 下图所示的程序中共有 5 201014条可能的执行通路,显 然,每条通路都执行一遍是不现实的。 即使每条路径都测试了,程序仍可能有错,如一个升 序程序编成了降序,穷尽测试也发现不了。 循环20次
5、测试步骤 需求分析 ----不正确、遗漏或表述不清楚的需求 软件错误可能 不正确或表述不清楚的转换 嵌入在需求分析 系统设计 不正确或不清楚的设计说明 设计、编码构件 程序设计 不正确或不清楚的设计说明 系统设计的错误解释 或文档等开发和 程序设计的错误解释 维护的任何地方, 程序实现 不正确的文档 不正确的语法或语义 图中列举了每个 单元/集成测试 不完整的测试过程 开发活动中可能 -当纠正旧的错误时引入的新错误 的错误原因 系统测试 不完整的测试过程 因此测试步骤 不正确的用户文档 维护 人为因素 应与分析、设计 当纠正旧的错误时引入的新错误 需求变动 编码等活动对应。 具体测试步骤在 5.3节介绍。 开发中引起错误的原因 西安交通大学刘海
西安交通大学 刘海岩 9 5、测试步骤 软件错误可能 嵌入在需求分析、 设计、编码构件 或文档等开发和 维护的任何地方, 图中列举了每个 开发活动中可能 的错误原因。 因此测试步骤 应与分析、设计、 编码等活动对应。 具体测试步骤 在 5.3节介绍
52软件测试技术 白盒法和黑盒法是设计测试用例的基本策略,每一种 策略对应着多个设计用例的技术,每种技术可达到一定 的测试目的。 1、白盒技术 被测对象基本上是源程序,以程序的内部逻辑结构为基 础设计测试用例。原则是 保证被测程序中每一条独立的路径至少执行一次 保证所有判断的每一分支至少执行一次 保证每一循环都在边界条件和一般条件下至少各执行 次 验证所有各内部数据结构的有效性。 西安交通大学刘海
西安交通大学 刘海岩 10 5.2 软件测试技术 白盒法和黑盒法是设计测试用例的基本策略,每一种 策略对应着多个设计用例的技术,每种技术可达到一定 的测试目的。 1、白盒技术 被测对象基本上是源程序,以程序的内部逻辑结构为基 础设计测试用例。原则是: • 保证被测程序中每一条独立的路径至少执行一次。 • 保证所有判断的每一分支至少执行一次。 • 保证每一循环都在边界条件和一般条件下至少各执行 一次。 • 验证所有各内部数据结构的有效性