发表于: 2018-05-30 22:01:56

1 717


今天完成的事:

       看了一下任务三里面的第三步(根据多方面的测试方法编写测试点)有点不理解是什么意思,不知道怎么去做,然后今天就学习了有关黑盒测试用例设计方法的一些知识

       黑盒测试又称功能测试或数据驱动数据,我们可以理解为把测试对象当作看不见内部的一个黑盒子,在完全不考虑程序内部结构和处理过程的情况下,测试者仅依据程序功能的需求规范考虑,确定测试用例和推断测试结果的正确性。

      关于黑盒测试用例的设计方法主要学习了等价类划分、边界值分析、因果图分析法等


一、等价类划分法

     等价类划分:就是把所有可能的输入数据(程序的输入域划分成若干部分“子集”),然后从每一个子集中选取少数具有代表性的数据作为测试用例。

  1、划分等价类的考虑因素:

       a、输入数据 b、输出数据

【有效等价类】对于程序规格说明来说,是合理的、有意义的输入数据构成的集合

【无效等价类】程序规格说明来说,是不合理的、没有意义的输入数据构成的集合

2、划分等价类的标准

   a、完备测试、避免冗余

   b、划分等价类重要的是:集合的划分,划分为互不相交的一组子集,而子集的并是整个集合

   c、并是整个集合:备性

   d、子集互不交互:保证一种形式的无冗余性

   e、同一类中标识(选择)一个测试用例,同一等价类中,往往处理相同,相同处理映射到“相同的执行路劲”

3、设计测试用例

       在确立了等价类后,可建立等价类表,列出所有划分出的等价类输入条件:有效等价类、无效等价类从划分出的等价类中按一下三个原则设计测试用例:

   a、为每一个等价类规定一个唯一的编号

   b、设计一个新的测试用例,使其尽可能多的覆盖尚未覆盖的有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止

   c、设计一个新的测试用例,使其仅覆盖一个尚未覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止


二、边界值分析

1、一般来说,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。 

    例如:在三角形计算时,要输入三角形的三个边长:A、B和C、因此这三个值要满足下列条件

             A>0,B>0,C>0,a+b>c,a+c>b,b+c>a,才能构成三角形

            若把六个不等式中的任何一个大于号错写成大于等于号,那么久不能构成三角形

        问题恰容易出现在容易被疏忽的边界值附近

2、边界值分析原则

   a、如果输入条件规定了值的范围,则取刚到达这个范围的边界值,以及刚刚超越这个的边界值作为测试的输入数据

   b、如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大数多一的数作为册数数据

   c、根据规格说明的每个输出条件,使用原则1

例如:某程序的功能是计算折扣量,最低折扣是0元,最高折扣是1000元,则涉及一些测试用例,是他们刚好产生0元和1000元的结果。

   d、如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例

   e、分析规格说明,找出其他可能的边界条件。


3、编写测试用例的步骤

   a、根据被测对象的输入(或输出)要求确定边界值

   b、选取等于,刚刚大于,刚刚小于边界的值作为测试数据

基本思想是:最小值min、略高于最小值min+、正常值nom、略低于最大值max-和最大值max等出取值


三、因果图

因果图:设计思想就是根据输入的条件组成嘴和,得到结果。因果图转化成判定表,而判定表的每一列设计成一个一个测试用例

因果图测试步骤:(输入条件)是因,输出条件是果,输入条件的有效组合得到对应的果。

   a、分析软件规格说明描述中,哪些是原因(输入条件或输入条件的等价类),那些事结果(输出条件),并给每个原因和结果赋予一个标识符。

   b、分析软件规格说明描叙中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系,根据这些关系,画出因果图

   c、由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现,为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件

   d、把因果图转换成判定表

   e、把判定表的每一列拿出来作为依据,设计测试用例。

ps:当原因是多条输入条件的时候,会产生条件之间的相互制约关系,这样的话会得出不同的结果。


总结:黑盒测试方法的策略选择,一般参考以下原则:

   1、首先进行等价类划分,包括输入条件和输出条件的等价划分,将无限测试变成有限测试。这是减少工作量和提高测试效率最有效的方法

   2、在任何情况下都必须使用边界值分析方法。事实证明,用这种方法设计吃的测试用例发现程序错误的能力最强

   3、采用错误推断法在追加测试用例,这需要依靠测试工程师的智慧和经验

   4、对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度,如果没有达到要求的覆盖标准,则应当在补充多的测试用例

   5、如果程序的功能说明中含有输入条件的组合情况,则应一开始就选用因果图法和判定表驱动法

   6、对于业务流清晰地系统,可以利用场景法贯穿整个测试案例过程,在案例中综合使用各种测试方法

   7、对于参数配置类的软件,要用正交实验法选择较少的组合方式达到最佳效果


明天计划的事:明天工作上的事情,可能要鸽一天

遇到的问题:对于等价类划分和边界值分析法学习之后大概的明白了其中的原理,没实践过不知道学到了多少,因果图的话还是没弄明白

收获:关于黑盒测试用例的设计有一定的了解吧,可以看懂其中的原理。


返回列表 返回列表
评论

    分享到