• 4.6.4 白盒测试(第一部分)


    白盒测试又称为逻辑驱动测试或者是结构测试。白盒测试它要考虑逻辑结构或者是内部结构.所以说白盒测试它是建立在已经知道了这个模块它的内部工作过程、内部逻辑有哪些分支、有哪些语句,这些都清楚地记录上来进行的。黑盒测试就是不管里面有些什么东西,不管做了什么样的操作,它只管一个输入一个结果。

    设计一些测试用例,比如说设计语句覆盖它的测试用例。达到语句覆盖的测试用例它能够覆盖多少条路径。达到判定覆盖要求的又能够覆盖几条路径。从中最主要是分析它的原理。

    语句覆盖的含义:程序当中每一条语句都要被执行一次。也就是说我输入一组数据得到结果,在这个过程当中呢由于我设计的用例的数据采用的不同,能够使程序当中的每一个语句都执行一遍。这就达到了语句覆盖。


    语句覆盖

    判断语句和赋值语句全部都经历过了。然而测试用例[2,0,4]和[2,0,3]只覆盖到了一条路径a->c->e,还有其他三条路径它都没有涉及到。所以语句覆盖它的覆盖程度是很弱的。


    判定覆盖。

    判定覆盖就是每一个判定它的真分支和假分支都要覆盖到。弥补了刚才语句覆盖没有覆盖到假分支路径的不足。

    这样就符合判定覆盖了。因为每一个判定它的真假分支都覆盖到了。但是判定覆盖只覆盖到了两条路径。第一条是L1(语句覆盖覆盖到的路径),第二条是L2.所以判定覆盖要比语句覆盖强。

    判定覆盖实际上它是包含了语句覆盖的。


    条件覆盖:

    要知道条件和判定的区别。A>1 and B=0这是一个判定。 条件的范畴要比判定小。在这个判定中A>1和B=0都是一个条件。所以判定与条件是整体与部分的关系。条件只是判定的一个部分而已,当然也有可能判定只有一个条件。所以条件覆盖的要求是把判定中所有的条件都列举出来。要求A>1和A<=1的取值都要覆盖一遍,同时B=0和B≠0的情况都要有。A=2和A≠2的情况也必须要有。X>1和X<=1的情况都要覆盖到。

  • 相关阅读:
    【C++】链表回环检测
    【C++】满二叉树问题
    【C++】约瑟夫环(数组+链表)
    【C++】子序列匹配问题
    【OJ】抓牛问题
    【C++】基于邻接矩阵的图的深度优先遍历(DFS)和广度优先遍历(BFS)
    【C++】二叉树的构建、前序遍历、中序遍历
    范进中Nature——儒林外史新义
    VMware Workstation下ubuntu虚拟机无法上网连不上网络解决
    儒林外史人物——娄三、娄四公子
  • 原文地址:https://www.cnblogs.com/ZHONGZHENHUA/p/6934650.html
Copyright © 2020-2023  润新知