第二篇 测试技术基本知识参考.docx
- 文档编号:10539653
- 上传时间:2023-02-21
- 格式:DOCX
- 页数:106
- 大小:2.05MB
第二篇 测试技术基本知识参考.docx
《第二篇 测试技术基本知识参考.docx》由会员分享,可在线阅读,更多相关《第二篇 测试技术基本知识参考.docx(106页珍藏版)》请在冰豆网上搜索。
第二篇测试技术基本知识参考
第二篇测试技术
第5章黑盒测试案例设计技术
1、测试用例
就是将软件测试的行为活动作一个科学化的组织归纳。
测试用例应包括:
测试目标和被测功能、测试环境和其他条件、测试数据和测试步骤。
(2008年)●测试用例是测试使用的文档化的细则,其规定如何对软件某项功能或功能组合进行测试。
测试用例应包括下列(32)内容的详细信息。
①测试目标和被测功能②测试环境和其他条件
③测试数据和测试步骤④测试记录和测试结果
A.①③B.①②③C.①③④D.①②③④
(2009)●系统功能测试过程中,验证需求可以正确实现的测试用例称为(32)。
(32)A.业务流程测试用例 B.功能点测试用例
C.通过测试用例 D.失败测试用例
●(33)不属于功能测试用例构成元素。
(33)A.测试数据 B.测试步骤 C.预期结果 D.实测结果
●功能测试执行过后一般可以确认系统的功能缺陷,缺陷的类型包括(37)。
①功能不满足隐性需求②功能实现不正确
③功能不符合相关的法律法规④功能易用性不好
(37)A.① B.①②③ C.②③④ D.②
使用测试用例的好处:
①设计好的测试用例,可以避免盲目测试,提高测试效率;
②测试的重点突出、目的明确;
③降低工作强度,缩短项目周期;
④功能模块的通用化和复用化使软件易于开发,而测试用例的通用化和复用化使软件测试开展,并随着测试用例的不断精化其效率也不断攀升。
黑盒测试:
也称功能测试,它是通过测试来检测每个功能是否都能正常使用
把程序看成一个黑盒子,完全不考虑程序内部结构和内部特性,着眼于程序外部结构,不考虑内部逻辑结构。
在程序接口进行测试,只检查程序功能是否按照需求说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。
主要针对软件界面和软件功能进行测试。
目的——试图发现的错误类型:
1)功能不正确或遗漏
2)界面错误(输入能否正确的接受?
能否输出正确的结果)
3)数据库访问错误(如数据结构定义错误或外部信息(如数据文件)访问错误)
4)性能错误
5)初始化和终止错误
黑盒测试测试用例设计方法:
(1)等价类划分法:
把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据作为测试用例。
每一类的代表性数据在测试中的作用等价于这一类的其他值
(2)边界值分析法:
通过选择等价类边界的测试用例。
不仅重视输入条件边界,而且也必须考虑输出域边界
(3)错误推测法:
基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用例的方法
(4)因果图法:
从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输入或程序状态的改变),可以通过因果图转换成判定表
(5)判定表驱动法:
利用判定表进行测试用例的设计
(6)正交试验设计法:
使用已设计好的正交表格来安排试验,并进行数据分析的一种方法,目的是用最少的测试用例达到最高的测试覆盖率
(7)功能图法:
用功能图形象地表示程序的功能说明,并机械地生成功能图的测试用例。
功能图模型由状态迁移图和逻辑功能模型构成
2、等价类分析法
等价类:
是指某个输入域的子集合。
分为有效等价类、无效等价类
有效等价类:
指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。
利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能
无效等价类:
与有效等价类的定义相反。
划分等价类的6个原则:
1)在规定了取值范围或值的个数时,可确立1个有效等价类和2个无效等价类
2)在规定了输入值的集合或者规定了“必须如何”时,可确立1个有效等价类和1个个无效等价类
3)在输入条件是一个布尔量时,可确定1个有效等价类和1个无效等价类
4)在规定一组值(假定N个),并且程序要对每个值分别处理,可确立N个有效等价类和1个无效等价类
5)在规定了输入数据必须遵守的规则时,可确立1个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)
6)在确知已愺分的等价类中,各元素在程序处理中的方式不同时,应将该等价类进一步地划分为更小的等价类。
划分等价类原则(6条)
序号
输入条件(数据)
划分等价类
1
规定了取值范围
值的个数
一个有效等价类
两个无效等价类
2
规定了输入值的集合
规定了“必须如何”的条件
一个有效等价类
一个无效等价类
3
是一个布尔量
一个有效等价类
一个无效等价类
4
输入数据的一组值(n个),并且程序对每一个输入值分别进行处理
n个有效等价类
一个无效等价类
5
规定必须遵守的规则
一个有效等价类(符合规则)
若干个无效等价类
6
在确知已划分的等价类中,各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步地划分为更小的等价类
列出等价类表
在确定了等价类之后,建立等价类表,列出所有划分出的等价类
输入条件
有效等价类
无效等类
……
……
……
确定测试用例步骤:
1)为每个等价类规定一个唯一的编号
2)、设计一个新的测试用例,使期尽可能多地覆盖沿未覆盖的有效等价类。
重复这一步,最一使所有有效等价类均被测试用例所覆盖。
3)、设计一个新的测试用例,使其只覆盖一个无效等价类。
重复这一步使所有无效等价类均被覆盖。
等价类题型:
(2006)●对于业务流清晰的系统可以利用___(57)___贯穿整个测试用例设计过程广在用例中综合使用各种测试方法,对于参数配置类的软件,要用___(58)___选择较少的组合方式达到最佳效果,如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选用___(59)___和判定表驱动法。
(57)A.等价类划分 B.因果图法 C.正交试验法 D.场景法
(58)A.等价类划分 B.因果图法 C.正交试验法 D.场景法
(59)A.等价类划分 B.因果图法 C.正交试验法 D.场景法
(2009)●黑盒测试中,(59)是根据输出对输入的依赖关系设计测试用例。
(59)A.基本路径法 B.等价类 C.因果图 D.功能图法
(2006) ●黑盒测试是通过软件的外部表现来发现软件缺陷和错误的测试方法,具体地说,黑盒测试用例设计技术包括___(42)___等。
现有一个处理单价为1元的盒装饮料的自动售货机软件,若投入1元币,按下“可乐”、“雪碧”或“红茶”按钮,相应的饮料就送出来,若投入的是2元币,在送出饮料的同时退还1元币。
下表是用因果图法设计的部分测试用例,l表示执行该动作,0表示不执行该动作,___(43)___的各位数据,从左到右分别填入空格表中的
(1)—(8)是正确的。
用例序号
1
2
3
4
5
输
入
投入1元币
1
1
0
0
0
投入2元币
0
0
1
0
0
按“可乐”按钮
1
0
0
0
0
按“雪碧”按钮
0
0
0
1
0
按“红茶”按钮
0
0
1
0
1
输
出
退还1元币
(1)
0
(5)
(7)
0
送出“可乐”饮料
(2)
0
0
0
0
送出“雪碧”饮料
(3)
0
0
(8)
0
送出“红茶”饮料
(4)
0
(6)
0
0
(42)A.等价类划分法、因果图法、边界值分析法、错误推测法、判定表驱动法
B.等价类划分法、因果图法、边界值分析法、正交试验法、符号法
C.等价类划分法、因果图法、边界值分析法、功能图法、基本路径法
D.等价类划分法、因果图法、边界值分析法、静态质量度量法、场景法
(43)A.01001100 B.01101100 C.01001010 D.11001100
(2007)●用等价类法划分Windows文件名称,应该分成(39)个等价区间 。
(39)A.2 B.3 C.4 D.6
(课本P122)合法字符、非法字符、合法长度的名称、过长名称和过短名称
●在某大学学籍管理信息系统中,假设学生年龄的输入范围为16~40,则根据黑盒测试中的等价类划分技术,下面划分正确的是 (46) 。
(46)A.可划分为2个有效等价类,2个无效等价类
B.可划分为1个有效等价类,2个无效等价类
C.可划分为2个有效等价类,1个无效等价类
D.可划分为1个有效等价类,1个无效等价类
(2008)●用等价类划分法设计8位长数字类型用户名登录操作的测试用例,应该分成(44)个等价区间。
A.2B.3C.4D.6
(2009)●针对电子政务类应用系统的功能测试,为设计有效的测试用例,应(34)。
(34)A.使业务需求的覆盖率达到100%
B.利用等价类法模拟核心业务流程的正确执行
C.对一个业务流程的测试用例设计一条验证数据
D.经常使用边界值法验证界面输入值
3、边界值分析法
边界值分析:
是一种补充等价划分的测试用例设计技术,它不是选择等价类的任意元素,而是选择等价类边界的测试用例。
(1)边界类型
边界条件:
可以在产品说明书中有定义或者在使用软件过程中确定
次边界条件:
在软件内部,也称为内部边界条件
其他边界条件:
如输入信息为空(对于此类问题应建立单独的等价类空间)、非法、错误、不正确和垃圾数据
(2)边界值的选择方法(遵循原则)
序号
输入条件(数据)
输入边界值数据
1
规定了取值范围
刚刚达到这个范围
刚刚超越这个范围
2
规定值的个数
最大个数、比最大个数大1
最小个数、比最小个数少1
3
根据规格说明书的每个输出条件,使用原则1、2
4
输入或输出是个有序集合
集合的第一个、最后一个元素
5
程序中使用一个内部数据结构
内部数据结构边界上的值
6
分析规格说明,找出其他可能的边界
(3)例子:
●允许文本输入1~255个字符:
测试用例-1、255、254、0、256
●程序读写软盘:
测试用例-文件很小、等于软盘容量限制之内、空、超过
●程序允许在一张纸上打印多个页面:
测试用例-只打印一页,规定最大页,0页,大于允许最大页数
(4)考试题型
(2006)●用边界值分析法,假定1 (54)A.X=1,X=100 .X=0,X=1,X=100,X=101 C.X=2,X=99D.X=O,X=101 ●用边界值分析法,假定1 (54)A.X=1,X=100 .X=0,X=1,X=100,X=101 C.X=2,X=99D.X=O,X=101 (2007)●用边界值分析法,假定X为整数,10≤X≤100,那么X在测试中应该取(40)边界值 。 (40)A.X=10,X=100 B.X=9,X=10,X=100,X=101 C.X=10,X=11,X=99,X=100D.X=9,X=10,X=50,X=100 (2008)●下面为C语言程序,边界值问题可以定位在(45)。 intdata(3), inti, for(i=1,i<=3,i++) data(i)=100 A.data(0)B.data (1)C.data (2)D.data(3) ●假定X为整数类型变量,X>=1并且X<=10,如果用边界值分析法,X在测试中应该取(48)值。 A.1,10B.0,1,10,11C.1,11D.1,5,10,11 4、错误推测法 错误推测法: 是基于经验和直觉推测程序中所有可能存在的各种错误,有针对性地设计测试用例的方法。 5、因果图法 因果图法: 是从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出结果或程序状态的改变),通过因果图转换为判定表 什么时候使用因果图法? 侧重于输入条件的各种组合,各个输入情况之间的相互制约关系(依赖关系) 如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选用因果图法和判定表驱动法。 因果图设计方法: 1)、分析程序规格说明的描述中的原因、结果是哪些,原因为输入条件,结果为输出条件。 2)、分析程序规格说明的描述中语议的内容,将其表示成连接各个原因与各个结果的“因果图” 3)、标明约束条件。 4)、把因果图转换成判定表 5)、为判定表中每一列表示的情况设计测试用例。 因果图导出测试用例步骤 第一步: 分析程序规格说明的描述中,哪些是原因,哪些是结果。 原在因常常是输入条件或是输入条件的等价类,结果是输出条件 第二步: 分析程序规格说明的描述中语义的内容,并将其表示成连接各个原因与各个结果的‘因果图’ 第三步: 标明约束条件 第四步: 把因果图转换成判定表 第五步: 为判定表中每一列表示的情况设计测试用例 因果图基本图形符号 通常在因果图中,用Ci表示原因,Ei表示结果,各结点表示状态,可取值0(状态不出现)或1(某状态出现) 考试题型: (2009)●黑盒测试中,(59)是根据输出对输入的依赖关系设计测试用例。 (59)A.基本路径法 B.等价类 C.因果图 D.功能图法 6、判定表驱动法 判定表: 是分析和表达多逻辑条件下执行不同操作的情况的工具。 条件桩 条件项 动作桩 动作项 条件桩(ConditionStub): 列出了问题得所有条件.通常认为列出得条件的次序无关紧要 动作桩(ActionStub): 列出了问题规定可能采取的操作.这些操作的排列顺序没有约束 条件项(ConditionEntry): 列出针对它左列条件的取值.在所有可能情况下的真假值. 动作项(ActionEntry): 列出在条件项的各种取值情况下应该采取的动作. (1) 判定表: 是分析和表达多逻辑条件下执行不同操作的情况的工具 (2) 判定表组成 条件桩: 列出了问题的所有条件 动作桩: 列出了问题规定可能采取的操作 条件项: 列出针对它所列条件的取值,在所有可能情况下的真假值 动作项: 列出在条件项的各种取值情况下应该采取的动作 规则: 任何一个条件组合的特定取值及其相应要执行的操作 注: 判定表中贯穿条件项和动作项的一列就是一条规则; (3) 判定表的建立(步骤) 第一步: 确定规则的个数。 假如有n个条件,每个条件有两个取值(0,1),故有2n种规则 第二步: 列出所有的条件桩和动作桩 第三步: 填入条件项 第四步: 填入动作项。 制定初始判定表 第五步: 简化。 合并相似规则或者相同动作 (4) 适合使用判定表设计测试用例的条件 1规格说明以判定表的形式给出,或很容易转换成判定表 2条件的排列顺序不影响执行哪些操作 3规则的排列顺序不影响执行哪些操作 4当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则 5如果某一规则要执行多个操作,这些操作的执行顺序无关紧要 7、正交试验法 (1)概述 利用因果图来设计测试用例时,作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。 往往因果关系非常庞大,导致利用因果图而得到的测试用例数目多得惊人,给软件测试带来沉重的负担。 为了有效地、合理地减少测试的工时与费用,可利用正交试验法进行测试用例的设计。 正交试验法: 是从大量的试验数据中挑选适量的、有代表性的点。 从而合理地安排测试的一种科学的试验设计方法。 使用已造好的表格“-”正交表来安排试验并进行数据分析的一种方法 指标: 通常把判断试验结果优劣的标准叫做试验的指标; 因子: 所有影响试验指标的条件; 因子的状态: 影响试验因子的,叫做因子的状态。 (2)优点 1、节省测试工时 2、可控制生成的测试用例的数量 3、测试用例具有一定的覆盖率 (3)设计步骤 提取功能说明,构造因子‘-’状态表。 加权筛选,生成因素分析表; 利用正交表构造测试数据集,正交表的推导依据Galois理论 L: 代表正交表,L8(27)代表7为因子数,2为因子的水平数,8为此表行的数目(试验次数) 行数为mn型的正交表中,试验次数(行数)=∑(每列水平数-1)+1 例: 5个3水平因子及一个2水平因子,表示为35*21,试验次数=5*(3-1)+1*(2-1)+1=12,即L12(35*2) 优点: 利用正交试验设计方法设计测试用例,与使用等价类划分、边界值分析、因果图等方法相比,有以下优点: 节省测试工作工时;可控制生成的用例的数量;测试用例具有一定的覆盖率。 正交试验法在软件测试中是一种有效的方法,例如在平台参数配置方面,我们要选择哪种组合方式是最好的,每个参数可能就是一个因子,参数的不同取值就是水平,这样我们可以采用正交试验法设计出最少的测试组合,达到有效的测试目的。 什么时候使用正交试验法? 对于参数配置类的软件,要用正交试验法选择较少的组合方式达到最佳效果。 8、功能图法 (1)程序功能说明的组成 动态说明: 描述输入数据的次序或转移次序 静态说明: 描述输入条件和输出条件之间的对应关系 (2)功能图: 由状态迁移图和布尔函数组成,状态迁移图用状态和迁移来表示。 一个状态指出数据输入的位置(或时间),一个迁移指明状态的改变,同时要依靠判定表或因果图表示的逻辑功能(由状态迁移、逻辑功能模型组成。 )。 (3)功能图法概述 1、用功能图形象地表示程序的功能说明,并机械地生成功能图的测试用例 2、功能图模型由状态迁移图和逻辑功能模型构成 3、状态迁移图: 用于表示输入数据序列以及相应的输出数据;由输入数据和当前状态决定输出数据和后续状态 4、逻辑功能模型: 用于表示在状态中输入条件和输出条件的对应关系。 由输入数据决定输出数据。 此模型只适用于描述静态说明 5、功能图测试用例由测试中经过的一系列状态和在每个状态中必须依靠输入/输出数据满中的一对条件组成 (4)测试用例生成方法 从状态迁移图中选取测试用例,用节点代替状态,用弧线代替迁移,状态图就可转化成一个程序的控制流程图形式 (5)测试用例生成规则 为了把状态迁移(测试路径)的测试用例与逻辑模型(局部测试用例)的测试用例组合起来,从功能图生成实用的测试用例,在一个结构化的状态迁移(SST)中,定义3种形式的循环: 顺序,选择和重复 (6)功能图生成测试用例步骤 1生成局部测试用例: 在每个状态中,从因果图生成局部测试用例。 局部测试用例由原因值(输入数据)组合与对应的结果值(输出数据或状态)构成 2测试路径生成: 利用上面的规则生成从初始状态到最后状态的测试路径 3测试用例合成: 合成测试路径与功能图中每个状态的局部测试用例。 结果是初始状态到最后状态的一个状态序列,以及每个状态中输入数据与对应输出数据的组合。 4测试用例的合成算法: 采用条件构造树 9、场景法 对于业务流清晰的系统,可利用场景法。 场景法的基本设计步骤: (1) 基本流和备选流 采用此方法进行设计时,需要进行场景的设计,在场景中采用基本流和备选流表示经过用例的每条路径 1基本流: 采用直黑线表示,是经过用例的最简单的路径(无任何差错,程序从开始直接执行到结束) 2备选流: 采用不同颜色表示,一个备选流可能从基本流开始,在某个特定条件下执行,然后重新加入基本流中,也可以起源于另一个备选流,或终止用例,不在加入到基本流中;(各种错误情况) (2)设计步骤 1)、根据说明,描述出程序的基本流及各项备选流 2)、根据基本流和各项备选流生成不同的场景 3)、对每一个场景生成相应的测试用例 4)、对生成的所有测试用例重新复审,去掉多余的测试用例,测试用例确定后,对每一个测试用例确定测试数据值 10、黑盒测试用例设计方法的选择策略 1. 首先进行等价类划分,包括输入条件和输出条件的等价类划分,将无限测试变成有限测试,这是减少测试量和提高测试效率的最有效办法 2.在任何情况下都必须使用边界值分析方法。 此方法设计的测试用例发现程序错误的能力最强 3.可以用错误和推测法追加一些测试用例 4.对照程序的逻辑,检查已设计的测试用例的逻辑覆盖度,如果没有达到要求,应在补充 5.如果程序的功能说明中含有输入条件的组合情况,一开始就可以使用因果图法和判定表驱动法 6.对于参数配置类的软件,要用正交试验法选择较少的组合方式达到最佳效果 7.功能图法也是很好的测试用例设计方法,我们可以通过不同时期条件的有效性设计不同的数据 8.对于业务流清晰的系统,可以利用场景法贯空整个测试案例过程,在案例中综合使用各种方法 11、测试用例的编写 1.测试用例概述 (1)定义 1将测试行为具体量化的方法之一 2设计一种情况,软件程序在这种情况下,必须能够正常运行并且达到程序所设计的执行结果 3为达到最佳的测试效果或高效的揭露隐藏的错误而精心设计的少量测试数据, 4一个好的测试用例是在于它能发现至今未发现的错误 (2)优点: ●在开始实施测试之前设计好测试用例,可以避免盲目测试并提高测试效率 ●测试用例的使用令软件测试的实施重点突出、目的明确 ●在软件版本更新后只需修正少部分的测试用例便可展开测试工作,降低工作强度,缩短项目周期 ●功能模块的通用化和复用化使软件易于开发,而测试用例的通用化和复用化使软件测试易于开展,并随着测试用例的不断精化其效率也不断攀升 2.计划测试用例的目的 ●计划测试用例,是达成测试目标的必由之路 ●组织性: 使测试用例具有组织性,便于全体测试员和其他项目小组人员有效地审查和使用 ●重复性和跟踪,可以明确测试过程中测试用例的执行情况,保证测试的全面性 ●计划测试用例,可以避免发布忽略某些测试用例的软件 ●测试证实,正确的测试用例计划和跟踪提供了一种证实测试的手段 3.测试设计说明 (1) 定义: 在测试计划中提炼测试方法,要明确指出设计包含的特性以及相关的测试用例和测试程序,并指定判断通过/失败的规则 (2)目的;组织和描述针对具体特性需要进行的测试,注: 不给出具体的测试用例或执行测试的步骤 (3)包含的部分内容(来自ANSI/IEEE829 ANSI美国国家标准化组织) ●标识符: 用于引用和定位测试设计说明的惟一标识符 ●要测试的特性: 对测试设计说明所包含的软件特性的描述。 还将明确出要间接测试的特性 ●方法: 描述测试的通用方法。 如果方法在测试计划中描述,在测试设计说明中要详细描述要使用的技术,并给出如何验证测试结果的方法 ●测试用例信息: 用于描述所引用的测试用例的相关信息。 如测试用例编号 ●通过/失败规则: 描述用什么规则来判定某项特性的测试结果是通过还是失败。 4.测试用例说明 (1)定义(ANSI/IEEE829): 编写用于输入的实际数据和预期结果,并明确指出使用具体测试用例产生的测试程序的任何限制 (2)包含的内容 ●标识符: 由测试设计过程说明和测试程序说明引用的唯一标识符 ●测试项: 描述被测试的详细特性、代码模块等 ●输入说明: 列举执行测试用例的所有输入内容或者条件 ●输出说明: 描述进行测试用例预期的结果 ●环境要求: 执行测
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二篇 测试技术基本知识参考 第二 测试 技术 基本知识 参考