软件工程系统测试PPT学习教案_第1页
软件工程系统测试PPT学习教案_第2页
软件工程系统测试PPT学习教案_第3页
软件工程系统测试PPT学习教案_第4页
软件工程系统测试PPT学习教案_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、会计学1 软件工程系统测试软件工程系统测试 2 第1页/共85页 3 第2页/共85页 4 4.软件测试的工作量一般占软件开发总工作量的 40%以上,有的测试成本占到其它步骤总成本 的35倍。 1.软件测试是按照特定的规则,发现软件错误的 过程; 2.软件测试是对软件规格说明、设计和编码的最 后复审; 3.软件测试在软件生存周期中横跨两个阶段:模 块和单元测试在编码阶段,综合测试在独立 的测试阶段; 第3页/共85页 5 第4页/共85页 6 内容内容软件测试软件测试软件调试软件调试 目的目的从一个侧面证明程序员的失败;从一个侧面证明程序员的失败;证明程序员的正确;证明程序员的正确; 方法方法

2、从已知条件开始,使用预先定义的程序,从已知条件开始,使用预先定义的程序, 且有预知的结果,不可预见的仅是程序是且有预知的结果,不可预见的仅是程序是 否通过测试;否通过测试; 从不可知内部条件开始,除从不可知内部条件开始,除 统计性调试外,结果是不可统计性调试外,结果是不可 预见的;预见的; 约束约束有计划并且要进行测试设计;有计划并且要进行测试设计;不受时间约束;不受时间约束; 过程过程发现错误、改正错误、重新测试的过程;发现错误、改正错误、重新测试的过程;是一个推理的过程;是一个推理的过程; 方式方式执行是有规程的;执行是有规程的;执行要求程序员进行必要的执行要求程序员进行必要的 推理;推理

3、; 测试测试 人员人员 由独立的测试组在不了解软件设计的由独立的测试组在不了解软件设计的 条件下完成;条件下完成; 由了解详细设计的程序员完由了解详细设计的程序员完 成;成; 工具工具大多数测试的执行和设计可由工具支持。大多数测试的执行和设计可由工具支持。程序员能用的工具主要是调程序员能用的工具主要是调 试器。试器。 第5页/共85页 7 1.设计测试用例,要给出测试的预期结果。一个测试 用例,必须由两部分组成:对输入数据的描述及 其这些输入数据所产生的程序预期结果的精确描 述。 2.设计非法输入用例。当有非法输入时,测试程序 是否能够拒绝接受那些非法输入并给出提示信息 。 第6页/共85页

4、8 第7页/共85页 9 软件测试 人工测试 (代码复 审) 机器测试 (动态测试 ) 代码会审 走查和排练 办公桌检查 黑盒测试技术 白盒测试技术 第8页/共85页 10 1.人工测试 代码复审采用人工方式进行,目的在于检查程 序的静态错误。 2.机器测试 (1)在设定的测试数据上执行被测程序的过程,也称 为动态测试; (2)动态测试包括:测试用例、执行被测程序和分析 执行结果并发现错误的过程。 第9页/共85页 11 步骤步骤测试内容测试内容时间时间 单元单元 测试测试 将每一个模块作为一个单独的测试单元,保证每个模块作将每一个模块作为一个单独的测试单元,保证每个模块作 为一个单元能正确运

5、行。为一个单元能正确运行。 编码编码 阶段阶段 子系统子系统 测试测试 将经过单元测试的模块放在一起形成一个子系统来测试,将经过单元测试的模块放在一起形成一个子系统来测试, 以测试模块间的接口正确性作为主要任务。以测试模块间的接口正确性作为主要任务。 集中测集中测 试阶段试阶段 系统系统 测试测试 将经过测试的子系统装配成一个完整的系统来测试,检验将经过测试的子系统装配成一个完整的系统来测试,检验 系统是否确实能实现需求规格说明书中的功能,以及系统的系统是否确实能实现需求规格说明书中的功能,以及系统的 动态特征是否符合预定要求。系统测试是指整个计算机系统动态特征是否符合预定要求。系统测试是指整

6、个计算机系统( ( 包括软硬件包括软硬件) )的测试的测试, ,可与系统的安装和验收相结合进行。可与系统的安装和验收相结合进行。 验收验收 测试测试 在用户的参与下,把软件系统作为单一的实体进行测试,在用户的参与下,把软件系统作为单一的实体进行测试, 使软件系统能满足用户的需要。测试内容与系统测试基本相使软件系统能满足用户的需要。测试内容与系统测试基本相 同。同。 验收验收 阶段阶段 平行平行 测试测试 新旧两个系统同时运行进行比较,避免风险的同时给用户新旧两个系统同时运行进行比较,避免风险的同时给用户 对新系统一段熟悉的时间。对新系统一段熟悉的时间。 运行运行 阶段阶段 第10页/共85页

7、12 1. 模块接口 主要检查下述几个方面:参数的数目、次序 、属性或单位系统与变元是否一致;是否修改了 只作输入用的变元;全局变量的定义和用法在各 个模块中是否一致。 2. 局部数据结构 3. 重要的执行通路 第11页/共85页 13 4. 出错处理通路 当评价出错处理通路时,应该着重测试下 述一些可能发生的错误: (1) 对错误的描述是难以理解的; (2) 记下的错误与实际遇到的错误不同; (3) 在对错误进行处理之前,错误条件已经引起 系统干预; (4) 对错误的处理不正确; (5) 描述错误的信息不足以帮助确定造成错误的 位置。 5. 边界条件 第12页/共85页 14 第13页/共8

8、5页 15 第14页/共85页 16 第一步,对主控制模块进行测试,测试时用存根程序 代替所有直接附属于主控制模块的模块; 第二步,根据选定的结合策略(深度优先或宽度优先) ,每次用一个实际模块代换一个存根程序(新结合 进来的模块往往又需要新的存根程序); 第三步,在结合进一个模块的同时进行测试; 第四步,为了保证加入模块没有引进新的错误,可能 需要进行回归测试(即,全部或部分地重复以前做 过的测试)。 第15页/共85页 17 自顶向下结合 第16页/共85页 18 实现自底向上结合策略的步骤: 第二步,写一个驱动程序(用于测试的控制程序), 协调测试数据的输入和输出; 第三步,对由模块组成

9、的子功能族进行测试; 第一步,把低层模块组合成实现某个特定的软件子 功能的族; 第17页/共85页 19 第18页/共85页 20 自底向上结合 第19页/共85页 21 第20页/共85页 22 第21页/共85页 23 回归测试是指重新执行已经做过的测 试的某个子集,以保证软件发生变化时没 有带来非预期的副作用。 回归测试 第22页/共85页 24 任何成功的测试都会发现错误,而且错误必 须被改正。每当改正软件错误的时候,软件配置 的某些成分(程序、文档或数据)也被修改了。 回归测试就是用于保证由于调试或其他原因 引起的变化,不会导致非预期的软件行为或额外 错误的测试活动。 回归测试 第2

10、3页/共85页 25 回归测试可以通过重新执行全部测试用例的一 个子集人工地进行,也可以使用自动化的捕获回放 工具自动进行。 利用捕获回放工具,软件工程师能够捕获测试 用例和实际运行结果,然后可以回放(即重新执行 测试用例),并且比较软件变化前后所得到的运行 结果。 回归测试 第24页/共85页 26 第25页/共85页 27 n 确认测试也称为验收测试,它的目标是验证软件的 有效性。 n 验证指的是保证软件正确地实现了某个特定要求的 一系列活动。 确认指的是为了保证软件确实满足了用户需求而进 行的一系列活动。 软件有效性的一个简单定义是: 如果软件的功能和 性能如同用户所合理期待的那样,软件

11、就是有效 的。 第26页/共85页 28 n Beta测试由软件的最终用户们在一个或多 个客户场所进行。Beta测试是软件在开发者不 能控制的环境中的“真实”应用。 第27页/共85页 29 第28页/共85页 30 第29页/共85页 31 设计测试方案是测试阶段的关键技术问题。 测试方案包括具体的测试目的(例如,预定 要测试的具体功能),应该输入的测试数据和预 期的结果。 把测试数据和预期的输出结果称为测试用例。 第30页/共85页 32 第31页/共85页 33 第32页/共85页 34 第33页/共85页 35 第34页/共85页 36 白盒方法穷尽测试实例: 第35页/共85页 37

12、 第36页/共85页 38 黑盒方法穷尽测试实例: 第37页/共85页 39 第38页/共85页 40 第39页/共85页 41 一、白盒测试称为结构测试,测试者了解被测程序的 内部结构和处理过程,对程序的所有逻辑路径进 行测试,在不同点检查程序状态,确定实际状态与 预期状态是否一致。 二、白盒测试从程序的逻辑结构入手,按照一定的原 则,来设计测试用例和测试数据,因此白盒测试 法也称为逻辑覆盖法。 第40页/共85页 42 四.通过白盒测试发现的错误: 1.程序中的逻辑错误和不正确的假设和条件; 2.没预料到的意外路径; 3.语法检查未发现的印刷或书写错误。 第41页/共85页 43 第42页

13、/共85页 44 1 T (A1) and (B=0) (A=2) or (X1) X = X/A X = X+1 a b d c e 路径: ace L1 abd L2 abe L3 acd L4 第43页/共85页 45 对于第一个判断: 条件 A1 取真为T1,取假为 条件 B0 取真为T2,取假为 对于第二个判断: 条件 A2 取真为T3,取假为 条件 X1 取真为T4,取假为 1 T 2 T 3 T 4 T 第44页/共85页 46 L1(ace) A B A XA1021andandor A B A A B X A 102 101 andandor andand A B A B X

14、 A 20 101 andor andand 软件测试技术示例 第45页/共85页 47 L2 (abd) =A B A X1021andandor A B A X1021orandand = A A X B A X 121 021 andandor andand A X B A X 11 021 andor andand 软件测试技术示例 第46页/共85页 48 软件测试技术示例 第47页/共85页 49 L4 (acd) A B A X A1021andandor A B A X A1021andandand 软件测试技术示例 第48页/共85页 50 【 (2, 0, 4) 】 注:(

15、2, 0, 4)即:A=2,B=0,X=4 下同。 软件测试技术示例 第49页/共85页 51 , 还可得另一组可用的测试用还可得另一组可用的测试用 例。例。 例图 第50页/共85页 52 4321 TTTT 4321TTTT T T T T1234 4321 TTTT 例图 第51页/共85页 53 4321TTTT T T T T1234 例 图 第52页/共85页 54 T T12 T T12 TT12 TT12 T T34 T T34 T T34 T T34 第一个判断 第二个判 断 例图 第53页/共85页 55 测试用例 覆盖分支 覆盖条件 覆盖组合 【(2, 0, 4)】 (L

16、1) , 【(2, 1, 1)】 (L3) , 【(1, 0, 3)】 (L3) , 【(1, 1, 1)】 (L2) , T T T T1234 T T T T1234 TT T T1234 T T T T1234 例图 第54页/共85页 56 T T T T1234 T T T T1234 T T T T1234 T T T T3412 例图 第55页/共85页 57 第56页/共85页 58 通过计算程序的环形复杂度,并用该复杂度为指南定义执行路径的基本集合。 从执行路径的基本集合导出的测试用例可以保证程序中的每条语句至少执行一次,而且每个条件在执行时都将分别取真、假两种值。 1、根据

17、过程设计结果画出相应的流图; 2、计算流图的环形复杂度; 3、确定线性独立路径的基本集合; 4、设计可强制执行基本集合中每条路径的测试用例 第57页/共85页 59 n 流图:抽象化的程序流图,突出表现控制流. 符号为流图的一个结点,表示一个或 多个无分支语句。 箭头为边,表示控制流的方向。 第58页/共85页 60 在分支结构中,分 支的汇聚处应有一个 汇聚结点. 每一条边必须终止于 一个结点 第59页/共85页 61 第60页/共85页 62 n 环形(环路)复杂度方法,根据程序内单条件分支 数或循环个数来度量程序的复杂度. McCabe方法根据程序控制流的复杂程度定量度 量程序的复杂程度

18、,这样度量出的结果称为程序的 环形复杂度。 第61页/共85页 63 第62页/共85页 64 第63页/共85页 65 第64页/共85页 66 第65页/共85页 67 第66页/共85页 68 第67页/共85页 69 第68页/共85页 70 等价类划分启发式规则 输入条件:“.值可以是1到999” “.项数可以是1到999” 无效等价类有效等价类无效等价类 1999 第69页/共85页 71 四个有效等价类,一个无效等价类。 输入规定:”标识符是一字母打头的长度不超 过八位的串。” 则字母打头长度在18位的为一个有效等 价类,非字母打头为一个无效等价类,长度大 于八位或为空也是一个无

19、效等价类。 第70页/共85页 72 int sum (int n) int m=0; for(int i=1;i=n;i+) m=m+i; 第71页/共85页 73 输入条件输入条件有效等价类有效等价类无效等价类无效等价类 第72页/共85页 74 第73页/共85页 75 第74页/共85页 76 第75页/共85页 77 输入条件 有效等价类 无效等价类 出生年月 对应数值 月份对应 数值 6位数字字符 有非数字字符 少于6个数字符多于6个数字符 在197003- 198903之间 在112之间 198903 等于0 12 等价类表如下 : 第76页/共85页 78 依据等价类法设计测试用例如下表: 测试数据期望结果覆盖等价类 197311 MAY,72 19725 输入有效 输入无效 197622 输入无效 1983011输入无效 195512 输入无效 输入无效 输入无效 输入无效 199510 197300 第77页/共85页 79 依据边界值分析法设计测试用例如下表: 测试数据期望结果 5个数字字符 7个数字字符 有1个非法字符 全是非法字符 6个数字字符 输入有效 输入无效 输入无效 输入有效 输入有效 输入无效 刚好35周岁 刚好16周岁 刚好35 刚好16 月份为1月 月份为12月 月份刚好12 出生年月对应数值 应数值 月份对 测试数据输入条件 197

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论