1.7软件测试 1.71软件测试概述 一,软件测谜的定义 使用人工或自动手段來运行式测定某个系统的过 程,其目的在于检验它是否满足规定的卿求或是弄 清预期结果与实际结果之间的差别,即检查程序是 否正确 二.软件测试的主要任翕 以较少的用例、时间和人力找出软件中潜在的各 种错误和缺陷,以确保系统的质量
1.7 软件测试 1.7.1 软件测试概述 一.软件测试的定义 使用人工或自动手段来运行或测定某个系统的过 程,其目的在于检验它是否满足规定的需求或是弄 清预期结果与实际结果之间的差别,即检查程序是 否正确。 二.软件测试的主要任务 以较少的用例、时间和人力找出软件中潜在的各 种错误和缺陷,以确保系统的质量
1.72测试计划 为了确保测试工作的顺利进行,测试之前 应制定详细的测试计划。 制定测试计划时中最主要的工作是: 测试用例的设计
1.7.2 测试计划 为了确保测试工作的顺利进行,测试之前 应制定详细的测试计划。 制定测试计划时中最主要的工作是: 测试用例的设计
1.73测试用例设计 测试用例规定如何对某项功能或功能组合进 行测试。测试用例包括下列內容的详细信息 1.要测试的功能 2.测试环境和其他条件 (配置细节和准备工作) 3.测试数据 4.过程 5.系统的预期行为
1.7.3 测试用例设计 测试用例规定如何对某项功能或功能组合进 行测试。测试用例包括下列内容的详细信息: 1.要测试的功能 2.测试环境和其他条件 (配置细节和准备工作) 3.测试数据 4.过程 5.系统的预期行为
常用的测试方法 1.静态测试方法:在不远行程序的情祝下进行测试的 方法。 计箕机辅助静恋分析方 静态测试方法 法 人工测试方法 2.动态测试方法 动,测试方法:是指通过在计算机上运行被测谜程 序,并利用所设计的测谜用例对程序进行检测的方法。 白盒测试方法 动恋测试方法〈黑盒测试方法 穷举测试方法
1.静态测试方法 :在不运行程序的情况下进行测试的 方法。 静态测试方法 计算机辅助静态分析方 法 人工测试方法 2.动态测试方法 动态测试方法:是指通过在计算机上运行被测试程 序,并利用所设计的测试用例对程序进行检测的方法。 ❖常用的测试方法 白盒测试方法 黑盒测试方法 穷举测试方法 动态测试方法
(1)票盒测试方法又称功能测试,它把程序看作 一个票盒子,完全不考庞程序内部的结构和处理过程 测试者只考虐该程序输入和输出之间的关系,或只考 慮程序的功能。 例如,假设现在我们需要测试一单元模块,其主要功 能是计算各输入数据(>=0)的平方和。测试用例可设计如 卜: 输入数据 预期结果 0,-1,1 错误提示:请输入非负数 5,2,1 30 错误提示:请输入数据 在此测试者不用关心此功能模块的具体臭现细节, 而只关注其输出结果是否达到预期的目标
(1)黑盒测试方法又称功能测试,它把程序看作 一个黑盒子,完全不考虑程序内部的结构和处理过程, 测试者只考虑该程序输入和输出之间的关系,或只考 虑程序的功能。 例如,假设现在我们需要测试一单元模块,其主要功 能是计算各输入数据(>=0)的平方和。测试用例可设计如 下: 输入数据 预期结果 [0,-1,1] 错误提示:请输入非负数 [5,2,1 ] 30 [ ] 错误提示:请输入数据 在此测试者不用关心此功能模块的具体实现细节, 而只关注其输出结果是否达到预期的目标
(2)白盒测试又称结构测试,它是根据被测程序的 逻辑结构设计测谜用例。为了追求测谜盖率,减少 测试的盲目性,为此发展了多种覆盖技米 语旬渡盖 判定渡盖 条件段盖 常用的盖技术 判定/条件覆盖 亲件组合盖 路径覆盖登。 (3)穷举测试对被测程序进行穷举测试是不现窦 的
(2)白盒测试又称结构测试,它是根据被测程序的 逻辑结构设计测试用例。为了追求测试覆盖率,减少 测试的盲目性,为此发展了多种覆盖技术 语句覆盖 判定覆盖 条件覆盖 判定/条件覆盖 条件组合覆盖 路径覆盖等。 常用的覆盖技术 (3)穷举测试 对被测程序进行穷举测试是不现实 的
1.74测试步骤 通常把软件测谜阶段的工作分成若干步骤 选行。这些步骤包括 1.单元测试(模块测试) 2集成测试(组装测试) 3.验收测试(有效性测试) 4.系统测试
1.7.4 测试步骤 通常把软件测试阶段的工作分成若干步骤 进行。这些步骤包括: 1.单元测试(模块测试) 2.集成测试(组装测试) 3.验收测试(有效性测试) 4.系统测试
1.单元测试 是对程序的最小单位模块所进行地测谜。是测谜该 棋块的源代码。 2.集成测试(组装测试) 在把所有的模块按软件的结构困组装起來,构成 个系统过程中卿要进行的测谜,称为集成测谜。其 主要目标是发现与接口有关的问题。 3.验收测试(有效性测试) 检测软件的功能和用户所要求的、所期待的是否一致。 4,系统测试 用于检测各部分在工作环境下是否能正常工作
1.单元测试 是对程序的最小单位模块所进行地测试。是测试该 模块的源代码。 2.集成测试(组装测试) 在把所有的模块按软件的结构图组装起来,构成一 个系统过程中需要进行的测试,称为集成测试。其 主要目标是发现与接口有关的问题。 3.验收测试(有效性测试) 检测软件的功能和用户所要求的、所期待的是否一致。 4.系统测试 用于检测各部分在工作环境下是否能正常工作
1.7.6调试 测谜本身的目的是尽可能多地发淝程序中的错误。 然而发现错误不是目的,发现错误的最终目标是为了 改正错误。仔细地定位错误的位置并欧正之、这就是 调谜。 一,常用的调谜技术 1.输出存储器内容: 2.打印语句 3.自动工具
1.7.6调试 测试本身的目的是尽可能多地发现程序中的错误。 然而发现错误不是目的,发现错误的最终目标是为了 改正错误。仔细地定位错误的位置并改正之、这就是 调试。 一 .常用的调试技术 1.输出存储器内容: 2.打印语句: 3.自动工具:
二。常用的调谜策略 1.试探法 2.回溯法 3.对分查找法: 4.归纳法 5.演绎法:
二.常用的调试策略 1.试探法: 2.回溯法: 3.对分查找法: 4.归纳法: 5.演绎法: