




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2021-11-211本章本章内内容容 测试测试用例用例设计概设计概述述 测试测试用例用例设计设计方法方法 白盒白盒测试测试用例用例设计设计方法方法 黑盒黑盒测试测试用例用例设计设计方法方法 单单元元测试测试用例用例设计设计 集成集成测试测试用例用例设计设计 系系统测试统测试用例用例设计设计软件学院2021-11-212 测试用例是为了特定目的(如考察特定程序路径或验证是否符合特定的需求)而设计的测试数据及与之相关的测试规程的一个特定的集合,或称为有效地发现软件缺陷的最小测试执行单元Test Case Definition 软件学院2021-11-213写作规范在ANSIIEEE 829 19
2、83 标准中列出了和测试设计相关的测试用例编写规范和模板。标准模板中主要元素如下: 1 标识符:每个测试用例应有一个惟一的标识,作为引用的基本元素。2 测试项:测试用例应准确地描述被测试项及其特征。如做 Windows 应用程序的窗口测试,测试对象是整个应用程序用户界面,其特性要求包括窗口缩放、界面布局、菜单等。软件学院2021-11-214写作规范3 测试环境要求:用来表明执行该测试用例需要的测试环境,可根据被 测模块对测试环境的需求来描述测试用例的测试环境。4 输入数据:用来执行测试用例的输入数据。5 对应输出数据:表示按照指定的环境和输入标准得到的期望输出结果。6 测试用例间的关联:用来
3、标识该测试用例与其他的测试(或其他测试用例)间的依赖关系软件学院2021-11-211 Black-Box Testing(功能测试或数据驱动测试)Unit Test?软件学院1 Black-Box Testing(功能测试或数据驱动测试)Unit Test?1) 是否有不正确或遗漏了的功能?2) 在接口上,输入能否正确地接受? 能否输出正确的结果?3) 是否有数据结构错误或外部信息 (例 如数据文件) 访问错误?4) 性能上是否能够满足要求?5) 是否有初始化或终止性错误?软件学院1 Black-Box Testing(功能测试或数据驱动测试)Unit Test?所有可能的输入条件和输出条件
4、中确定测试数据NO Possible1 Black-Box Testing(功能测试或数据驱动测试)软件学院2 White-Box Testing(内部结构)Unit Test?1) 对程序模块的所有独立的执行路径至少测试一次 路径覆盖测试;2) 对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试一次 逻辑覆盖测试;3) 在循环的边界和运行界限内执行循环体- 控制流测试;4) 测试内部数据结构的有效性 数据流测试、领域测试软件学院2 White-Box Testing(内部结构)Unit Test?循环循环20次次软件学院2 White-Box Testing(内部结构)Unit Tes
5、t?1) 对程序模块的所有独立的执行路径至少测试一次 路径覆盖测试;2) 对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试一次 逻辑覆盖测试;3) 在循环的边界和运行界限内执行循环体- 控制流测试;4) 测试内部数据结构的有效性 数据流测试、领域测试软件学院11Method Method White BoxWhite Box - Coverage - Coverage 方法 语句覆盖 判定覆盖 条件覆盖每一可执行语句至少执行一次判定分支取真和取假各执行一次 路径覆盖判定的每个条件的可能取值至少执行一次程序流程中的独立路径执行一次软件学院12Method Method White Box
6、White Box - Coverage - Coverage 实例 语句覆盖(A1)AND(B=0)X=X/A(A=2)OR(X1)X=X+1FTTFabcde软件学院13 分析 4条路径 2个判定 3个变量L1:a-c-e 程序L2:a-b-dL3:a-b-eL4:a-c-d软件学院14用例 语句覆盖 判定覆盖 条件覆盖【输入:(A,B,X),输出:(A,B,X)】 测试【(2,0,4),(2,0,3)】 覆盖L1【(2,0,4),(2,0,3)】【(1,1,1),(1,1,1)】 IF First IFSecond IF条件1: A1条件2: B=0F T F T 软件学院15 Step
7、 被测程序 建立程序的控制流程 计算基本路径数确定基本路径集合设计测试用例执行测试并记录结果12345软件学院16 程序流程图X K ?Pointer = FalseX = X +1Pointer = TrueYesNo软件学院17 程序控制流图X K ?Pointer = FalseX = X +1Pointer = TrueYesNo1234软件学院18 程序控制流程图1234软件学院19 Cyclomatic计算方法的计算公式: 路径数= 边数 节点数 + 2 计算基本路径数 9 7 + 2 = 4基本路径数 = 4软件学院20 确定基本路径集合 Path1: 1-2-3-4-5-6-7
8、 Path2: 1-2-3-4-5-6-1 Path3: 1-2-4-5-6-7 Path4: 1-2-4-5-6-1软件学院21 设计测试用例 变量赋值 Path1: 1-2-3-4-5-6-7 Path2: 1-2-3-4-5-6-1 Path3: 1-2-4-5-6-7 Path4: 1-2-4-5-6-1 Test Case软件学院22等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。测试某等价类的代表值就等价于对这一类其他值的测试 1 1 等价类等价类软件学院23等价类的划分有两种不同的情况:有效等价类:是对于程序规格说明来说,是合理的,有意义的
9、输入数据构成的集合。无效等价类:是指对于程序规格说明来说,是不合理的,无意义的输入数据构成的集合 1 1 等价类等价类软件学院24(1)如果输入条件规定了取值范围,或值的个数,则可确立一个有效等价类和两个无效等价类。 如,在程序规格说明中对输入条件有一句话: “ 项数可以从1到999 ” 则有效等价类是“1项数999” 两个无效等价类是“项数1”或“项数999” Example Example 软件学院25(2)如果输入条件规定了取值范围,或值的个数,则可确立一个有效等价类和两个无效等价类。 如,在程序规格说明中对输入条件有一句话: “ 项数可以从1到999 ” 则有效等价类是“1项数999”
10、 两个无效等价类是“项数1”或“项数999” Example Example 软件学院在数轴上表示成:无效等价类无效等价类有效等价类有效等价类无效等价类无效等价类1999软件学院27(2)如果输入条件规定了输入值的集合,如果输入条件规定了输入值的集合,或者是规定了或者是规定了“必须如何必须如何”的条件,的条件,这时可确立一个有效等价类和一个无这时可确立一个有效等价类和一个无效等价类。效等价类。 例如,在例如,在Pascal语言中对变量标识符语言中对变量标识符规定为规定为“以字母打头的以字母打头的串串”。那。那么所有以字母打头的构成有效等价类,么所有以字母打头的构成有效等价类,而不在此集合内(不
11、以字母打头)的而不在此集合内(不以字母打头)的归于无效等价类归于无效等价类。 Example Example 软件学院(3) 如果输入条件是一个布尔量,则可以确定一个有效等价类和一个无效等价类。(4) 如果规定了输入数据的一组值,而且程序要对每个输入值分别进行处理。这时可为每一个输入值确立一个有效等价类,此外针对这组值确立一个无效等价类,它是所有不允许的输入值的集合。 例如,在教师上岗方案中规定对教授、副教授、讲师和助教分别计算分数,做相应的处理。软件学院 因此可以确定 4 个有效等价类为教授、副教 授、讲师和助教,一个无效等价类,它是所有不符合以上身分的人员的输入值的集合。(5)如果规定了输
12、入数据必须遵守的规则,则可以确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。 例如,Pascal语言规定 “一个语句必须以分号;结束”。这时可以确定一个有效等价类 “以;结束”,若干个无效等价类 “以:结束”、“以,结束”、“以 结束”、“以LF结束”。软件学院2.确立测试用例a)在确立了等价类之后,建立等价类表,列出所有划分出的等价类。b)从划分出的等价类中按以下原则选择测试用例:输入条件输入条件有效等价类有效等价类无效等价无效等价类类软件学院(1)为每一个等价类规定一个唯一编号;(2)设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到所
13、有的有效等价类都被覆盖为止;(3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。3. 用等价类划分法设计测试用例的实例l在某一Pascal语言版本中规定:“标识符是由字母开头,后跟字母或数字的任软件学院l意组合构成。编译器能够区分的有效字符数为8 个,最大字符数为 80 个。” 并且规定:“标识符必须先说明,再使用。”“在同一说明语句中,标识符至少必须有一个。”l从输入条件来看,有如下几个: 标识符的组成 标识符的第一个字符 标识符的字符个数 说明语句中的标识符个数 标识符的使用软件学院用等价类划分方法,建立输入等价类表:输入条件输入
14、条件有效等价类有效等价类无效等价类无效等价类说明语句中说明语句中标识符个数标识符个数1个个(1), 多个多个(2)0个个(3)标识符中字标识符中字符数符数18个个(4)0个个(5), 8个个(6), 80个个(7)标识符组成标识符组成字母字母(8), 数字数字(9)非字母数字字符非字母数字字符(10), 保留字保留字(11)标识符第一标识符第一个字符个字符字母字母(12)非字母非字母(13)标识符使用标识符使用先说明后使用先说明后使用(14)未说明就使用未说明就使用(15)软件学院l下面选取了 9 个测试用例,它们覆盖了所有的等价类。 VAR x,T1234567:REAL; BEGIN x
15、:= 3.414; T1234567 := 2.732; . (1), (2), (4), (8), (9), (12), (14) VAR :REAL; (3) VAR x,:REAL; (5) VAR T12345678:REAL; (6)软件学院VAR T12345.:REAL; (7) 多于80个字符 VAR T$:CHAR; (10) VAR GOTO:INTEGER; (11) VAR 2T:REAL; (13) VAR PAR:REAL; (15) BEGIN . PAP := SIN (3.14 * 0.8) / 6;软件学院36边界值分析也是一种黑盒测试方法,是对等价类划分方
16、法的补充。 大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部 1 1边界值边界值软件学院37使用边界值分析方法设计测试用例,首先应确定边界情况。通常应当针对输入等价类的边界,选取正好等于,刚刚大于,或刚刚小于边界的值做为测试数据,而不是选取等价类中的典型值或任意值做为测试数据。 1 1边界值边界值软件学院38如何确定边界?通常的边界检查原则:a)数字:最大最小刚大于最大刚小于最小、b)字符串:位置(首位末位首位前末位后)长度(零 很大 超出缓冲区)取值范围(刚到达边界 刚超出边界)c)其他如质量、大小、速度、方位、尺寸、空间等都可按照最轻 最重,最大最小,最快最慢、最高最低、最
17、短最长、空满等确定边界。 1 1边界值边界值软件学院39例如,判断三角形问题,问题的提法是:程序接受 3 个整数 a、b 和 c 作为输入,用做三角形的边。整数 a、b 和 c 必须满足以下条件:C11a200 C21b200 C31c200 C4ab + cC5ba + c C6ca + bExampleExample软件学院40例如,判断三角形问题,问题的提法是:程序接受 3 个整数 a、b 和 c 作为输入,用做三角形的边。整数 a、b 和 c 必须满足以下条件:C11a200 C21b200 C31c200 C4ab + cC5ba + c C6ca + bExampleExample软件学院l按照构成三角形的条件 C1、C2和C3,整数a、b、c的边界值为1和200,稍超出边界的值为0和201。 C4、C5和C6的边界值分别是b+ca+1、a+cb+1和b+ca+1。l可取的测试用例如下表所示。 测测 试试 用用 例例abc a, b, c 达到最小边界达到最小边界 111 a, b, c 达到最大边界达到最大边界200200200 a 超出最小边界超出最小边界 0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025浙商银行丽水分行社会招聘笔试备考试题及答案解析
- 公司文档传播管理
- 物业员工责任分工说明
- UML建模原则预案
- 2025下半年新疆兵团招聘事业单位工作人员2398人笔试备考题库及答案解析
- 如何在学校中获得成功
- 嵌入式系统调试技术制度
- 2025年逃生防具测试题及答案
- 2025年事业单位笔试-天津-天津卫生事业管理(医疗招聘)历年参考题库含答案解析
- 2025四川绵阳三台县教体系统考调事业单位工作人员6人笔试含答案
- 网格员法律培训课件
- T-CRHA 089-2024 成人床旁心电监测护理规程
- 2025年全国企业员工全面质量管理知识竞赛题库(试题及答案)
- 2025年电信人工智能学习考试题库(含答案)
- 地热井气举反循环施工方案
- 医院药学相关法规课件
- 2024年金昌市科技馆招聘笔试真题
- 有机肥采购合同书
- 团建活动申请书
- 2025年度加油站油品储存安全协议范本
- 保安保洁培训计划方案
评论
0/150
提交评论