免费智能真题库 > 历年试卷 > 软件评测师 > 2009年上半年 软件评测师 上午试卷 综合知识
  第59题      
  知识点:   黑盒测试   因果图法
  关键词:   测试用例   黑盒测试   测试   黑盒   用例        章/节:   测试技术的分类       

 
黑盒测试中,(59)是根据输出对输入的依赖关系设计测试用例。
 
 
  A.  基本路径法
 
  B.  等价类
 
  C.  因果图
 
  D.  功能图法
 
 
 

 
  第59题    2016年下半年  
   29%
根据输出对输入的依赖关系设计测试用例的黑盒测试方法是(59)。
  第34题    2010年下半年  
   30%
设计功能测试用例的根本依据是(34)。
  第58题    2014年下半年  
   36%
以下关于等价类划分法的叙述中,不正确的是 (58) 。
   知识点讲解    
   · 黑盒测试    · 因果图法
 
       黑盒测试
        黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
        黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。
        黑盒测试法注重于测试软件的功能需求,主要试图发现下列几类错误。
        . 功能不正确或遗漏;
        . 界面错误;
        . 数据库访问错误;
        . 性能错误;
        . 初始化和终止错误等。
        从理论上讲,黑盒测试只有采用穷举输入测试,把所有可能的输入都作为测试情况考虑,才能查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进行测试。这样看来,完全测试是不可能的,所以我们要进行有针对性的测试,通过制定测试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。黑盒测试行为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测试行为具体量化的方法之一。具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。
        等价类划分的办法是把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值。
        边界值分析是通过选择等价类边界的测试用例。边界值分析法不仅重视输入条件边界,而且也必须考虑输出域边界。
        错误推测设计方法就是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用例的方法。
        因果图方法是从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),可以通过因果图转换为判定表。
        正交试验设计法,就是使用已经造好了的正交表格来安排试验并进行数据分析的一种方法,目的是用最少的测试用例达到最高的测试覆盖率。
 
       因果图法
        前节介绍的等价类划分方法和边界值分析法都是着重考虑输入条件,并没有考虑到输入情况的各种组合,也没考虑到各个输入情况之间的相互制约关系。如果在测试时必须考虑输入条件的各种组合,可能的组合数将是天文数字。因此必须考虑描述多种条件的组合,相应地产生多个动作的形式来考虑设计测试用例,这就需要利用因果图。在软件工程中,有些程序的功能可以用判定表的形式来表示,并根据输入条件的组合情况规定相应的操作。很自然,应该为判定表中的每一列设计一个测试用例,以便保证测试程序在输入条件的某种组合下,操作是正确的。
               因果图设计方法
               因果图法是从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表。
               利用因果图导出测试用例需要经过以下几个步骤:
               ①分析程序规格说明的描述中,哪些是原因,哪些是结果。原因常常是输入条件或是输入条件的等价类,而结果是输出条件。
               ②分析程序规格说明的描述中语义的内容,并将其表示成连接各个原因与各个结果的“因果图”。
               ③标明约束条件。由于语法或环境的限制,有些原因和结果的组合情况是不可能出现的。为表明这些特定的情况,在因果图上使用若干个标准的符号标明约束条件。
               ④把因果图转换成判定表。
               ⑤为判定表中每一列表示的情况设计测试用例。
               因果图生成的测试用例(局部,组合关系下的)包括了所有输入数据的取TRUE与取FALSE的情况,构成的测试用例数目达到最少,且测试用例数目随输入数据数目的增加而增加。
               事实上,在较为复杂的问题中,这个方法常常是十分有效的,它能有力地帮助我们确定测试用例。当然,如果哪个开发项目在设计阶段就采用了判定表,也就不必再画因果图了,而是可以直接利用判定表设计测试用例了。
               通常在因果图中,用Ci表示原因,Ei表示结果,其基本符号如下图所示。各结点表示状态,可取“0”或“1”值。“0”表示某状态不出现,“1”表示某状态出现。
               
               因果图的基本图形符号
               ①恒等:若原因出现,则结果出现;若原因不出现,则结果也不出现。
               ②非(~):若原因出现,则结果不出现;若原因不出现,则结果出现。
               ③或(∨):若几个原因中有1个出现,则结果出现;若几个原因都不出现,则结果不出现。
               ④与(∧):若几个原因都出现,结果才出现。若其中有1个原因不出现,则结果不出现。
               为了表示原因与原因之间、结果与结果之间可能存在的约束条件,在因果图中可以附加一些表示约束条件的符号。从输入(原因)考虑,有4种约束,例如:(a)、(b)、(c)、(d)。从输出(结果)考虑,还有1种约束,例如:(e),如下图所示。
               
               因果图的约束符号
               ①E(互斥):表示a、b两个原因不会同时成立,两个中最多有一个可能成立。
               ②I(包含):表示a、b、c这3个原因中至少有一个必须成立。
               ③O(惟一):表示a和b当中必须有一个,且仅有一个成立。
               ④R(要求):表示当a出现时,b必须也出现。a出现时不可能b不出现。
               ⑤M(屏蔽):表示当a是1时,b必须是0。而当a为0时,b的值不定。
               因果图测试用例
               例如:有一个处理单价为1元5角钱的盒装饮料的自动售货机软件。若投入1元5角硬币,按下“可乐”、“雪碧”或“红茶”按钮,相应的饮料就送出来。若投入的是两元硬币,在送出饮料的同时退还5角硬币。
               分析这一段说明,我们可以列出原因和结果。
               原因:①投入1元5角硬币;②投入2元硬币;
               ③按“可乐”按钮;④按“雪碧”按钮;⑤按“红茶”按钮。
               中间状态:①已投币;②已按钮。
               结果:①退还5角硬币;②送出“可乐”饮料;
               ③送出“雪碧”饮料;④送出“红茶”饮料。
               根据原因和结果,我们可以设计这样一个因果图(如下图所示。)
               
               因果图
               转换为测试用例,如下表所示,每一列可作为确定测试用例的依据。
               
               5-6
   题号导航      2009年上半年 软件评测师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第59题    在手机中做本题