https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注!
欢迎关注微信公众号:宝藏女孩的成长日记
如有转载,请注明出处(如不注明,盗者必究)

详述白盒测试的逻辑覆盖法的判定覆盖及其优缺点:

判定覆盖的定义:

判定覆盖是设计足够多的测试用例,使得程序中的每一个条件判断至少获得一次“真”和一次“假”,即使得程序流程图中的每一个真假分支至少被执行一次。

相比语句覆盖:

针对判断语句,在设定案例的时候,要设定True和False的两种案例,与语句覆盖不同的是增加了False的情况。语句覆盖是最基本的覆盖,只要能够满足判定覆盖,就一定能够满足语句覆盖。

判定覆盖率:

判定覆盖率=每个判定的真假值至少出现一次/判定结果的总数
eg: 案例代码中有判定2个,判定结果4个,设计测试用例执行了3个分支,分支覆盖率为3/4=75%。

测试实例:

以linux下shell编程为例:
输入以下代码,进行测试:

#!/bin/bash
echo “请输入第一个值:”
read a
echo “请输入第三个值:”
read b
echo “请输入第四个值:”
read c
echo “请输入第五个值:”
read dif [[ $a -gt 0 && $b-gt 0 && $c -gt 0 && $d-gt 0 ]]thenecho $(($a+$b+$c+$d))
elseecho $(($a-$b-$c-$d))
fi


我们设置两个简单的测试用例:a=1 b=2 c=3 d=4和a=-1 b=-2 c=-3 d=-4,得到下图的结果:

我们对用例进行执行,我们的判定覆盖率为: 100%

这里我们要区别语句覆盖:

语句覆盖是让echo $(($a+$b+$c+$d))和echo $(($a-$b-$c-$d))都执行一遍。而判定覆盖就是让程序的判定分别为真和假一次,因此,只要能够满足判定覆盖,就一定能够满足语句覆盖。

优缺点:

优点:
判定覆盖具有比语句覆盖更强的测试能力,同样也无须细分每条判定表达式。
缺点:
以上面的代码为例:如果我们将条件语句写错了,写成:

#!/bin/bash
echo “请输入第一个值:”
read a
echo “请输入第三个值:”
read b
echo “请输入第四个值:”
read c
echo “请输入第五个值:”
read dif [[ $a -gt 0 || $b-gt 0 || $c -gt 0 || $d-gt 0 ]]thenecho $(($a+$b+$c+$d))
elseecho $(($a-$b-$c-$d))
fi

也就是将if中改为,我们同样可以输出结果

由上图可知,我们得到了和If中为&&一样的结果,因此,我们可以得到:与语句覆盖一样的结论:判定覆盖能够满足条件的要求,但是不能对判断条件进行检查。

https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注!
欢迎关注微信公众号:宝藏女孩的成长日记
如有转载,请注明出处(如不注明,盗者必究)

详述白盒测试的逻辑覆盖法的判定覆盖及其优缺点相关推荐

  1. 详述白盒测试的逻辑覆盖法的条件判定覆盖及其优缺点

    条件判定覆盖的定义: 设计足够多的测试用例,使被测程序中每个判定的每个条件的所有可能取值(真假)至少执行一次,并且每个判定的所有可能(真假)分支也至少执行一次 .通俗来讲,就是条件和判定覆盖的升华! ...

  2. 详述白盒测试的逻辑覆盖的路径覆盖及其优缺点

    详述白盒测试的逻辑覆盖的路径覆盖及其优缺点 定义: 与其他覆盖的关系: 路径覆盖率: 测试用例: 优缺点: 定义: https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢 ...

  3. 详述白盒测试的逻辑覆盖的条件覆盖及其优缺点

    条件覆盖 详述白盒测试的逻辑覆盖的条件覆盖及其优缺点: 条件覆盖的定义: 与判定覆盖的区别: 条件覆盖率: 测试实例: 代码: 优缺点: 详述白盒测试的逻辑覆盖的条件覆盖及其优缺点: https:// ...

  4. 白盒测试的条件覆盖标准强于判定覆盖为什么不对?什么是逻辑覆盖?覆盖强弱关系?判定覆盖与条件覆盖有什么不同?【知足且坚定,温柔且上进---两牛博客】

    白盒测试的条件覆盖标准强于判定覆盖为什么不对?什么是逻辑覆盖?覆盖强弱关系?判定覆盖与条件覆盖有什么不同? 1.分析 2.什么是逻辑覆盖法 3.覆盖强弱关系(一般情况) 4.手动滑稽 5.什么是条件覆 ...

  5. 【软件测试】白盒测试的条件覆盖标准强于判定覆盖(错)

    白盒测试的条件覆盖标准强于判定覆盖(错) 条件覆盖:每个复合判定表达式的每个简单判定条件的取真和取假情况至少执行一次: 判定覆盖:又称为分支覆盖,其含义是保证程序中每个判定节点的取真和取假分支至少执行 ...

  6. 详解软件测试中白盒测试基本概念及四种白盒测试方法以及六种逻辑覆盖法(语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖)

    在这篇文章中,我们将讲解白盒测试的基本概念,以及四大常用的白盒测试方法. 一.白盒测试基本概念 1.白盒测试的定义 白盒测试又称为结构测试或逻辑驱动测试,它是把测试对象看成一个透明的盒子,它允许测试人 ...

  7. 白盒测试 | 用例设计方法之判定覆盖

    判定覆盖也被成为分支覆盖(Branch Coverage)是设计足够多的测试用例,使得程序中的每一个判断至少获得一次"真"和一次"假",即使得程序流程图中的每一 ...

  8. 白盒测试:语句覆盖、条件覆盖、判定覆盖、条件-判定覆盖、组合覆盖、路径覆盖

    1语句覆盖 使所有的判断语句都能执行一次的条件案例,例如当判断语句事组合语句的时候,并且用or连接,只满足一个案例即可 2判定覆盖(分支覆盖) 针对判断语句,在设定案例的时候,要设定True和Fals ...

  9. 白盒测试:语句覆盖、条件覆盖、判定覆盖、条件-判定覆盖、组合覆盖、路径覆盖...

    1语句覆盖 使所有的判断语句都能执行一次的条件案例,例如当判断语句事组合语句的时候,并且用or连接,只满足一个案例即可 2判定覆盖(分支覆盖) 针对判断语句,在设定案例的时候,要设定True和Fals ...

最新文章

  1. 潜在狄利克雷分配(LDA,Latent Dirichlet Allocation)模型(三)
  2. VoWi-Fi能给LTE时代的语音通信体验带来什么?
  3. web自动化测试常见面试题
  4. 【C#】详解使用Enumerable.Distinct方法去重
  5. prometheus + influxdb + grafana + mysql
  6. 清除webkit浏览器css设置滚动条
  7. javascipt -- find方法和findIndex方法的实现
  8. 学习笔记13-C语言-字符串函数、缓冲区
  9. ug后处理如何加密_UG在NX加工中如何添加后处理文件?
  10. 乐华娱乐前训练生黄智博卖口罩诈骗案宣判:获刑三年三个月
  11. php 赋值给 dom对象,详解PHP原生DOM对象操作XML的方法
  12. 谷歌造了个虚拟足球场,让AI像打FIFA一样做强化学习训练丨开源有API
  13. 分享15款很棒的 JavaScript 开发工具
  14. css小球落地阴影,CSS3球体掉落动画带阴影效果
  15. NE555延时电路设计
  16. 利用Clover、QTTabBar,像浏览器一样使用你的资源管理器,效率办公必备!
  17. 华为云HCIA含金量,华为HCIA题库
  18. 黑月MySQL_黑月编译器插件
  19. 双击div变成可编辑区的简单实现
  20. workman用户组

热门文章

  1. 07 - java 方法里面的 return
  2. gpu浮点计算能力floaps_基准测试移动 GPU 中的浮点精度 - 第 2 部分
  3. 下图中的蓝月亮为科学家用计算机,2018年高一地理前半期课时练习试卷带答案和解析...
  4. linux sql 语句菜鸟,Linux安装mysql
  5. Linux——VMware虚拟机安装CentOS步骤
  6. java某个时间推迟60天_java计算两个时间相差(天、小时、分钟、秒)
  7. 新闻资讯java开发_新闻资讯app开发的功能与意义
  8. java 线程加载类_java JVM-线程上下类加载器
  9. (找循环节)Number Sequence
  10. 计算机展望未来网络形态,在学习中展望未来