白盒测试各种覆盖详解
今天在这里总结一下白盒测试的各种覆盖~
从覆盖度高到覆盖度低的排序:
1.Path coverage(路径覆盖)
2.Combinatory coverage(多重条件覆盖/组合覆盖)
3.Clause/Branch coverage(条件/判断覆盖)
4.Clause coverage(条件覆盖)
5.Branch coverage(判断覆盖)
6.Statement coverage(语句覆盖)
用一个例子来示范:
路径覆盖-path coverage
对于路径覆盖,要把每一条路的每一种组合都走一遍。
在这里我标记了可能出现分叉的abcdef几条路,对于路径覆盖应该把以下路径的情况都走一遍:
acef
bcef
acdf
bcdf
多重条件覆盖/组合覆盖 combinatory coverage
每一个判断中的 每一个子句的组合 都要覆盖
第一个判断:x>3 and z<10
x>3 z<10 x>3 and z<10
1 T T T
2 T F F
3 F T F
4 F F F
第二个判断 x==4 or y>5
x==4 y>5
x=4 or y>5
1 T T T
2 T F F
3 F T F
4 F F F
一组测试用例:(经检验你会发现可以满足全部的上面8个情况)
{x=4,y=6,z=5}
{x=4,y=3,z=10}
{x=3,y=4,z=5}
{x=3,y=6,z=11}
条件/判断覆盖
条件覆盖 clause coverage
每一个判断中的每个子句的不同true false都要取一次
对于这里一共有四个子句:x>3 z<10 x==4 y>5
x>3 取true false各一次(以及以上)
z<10取true false各一次(以及以上)
…以此类推 就可以满足条件覆盖
一组测试用例:
{x=4, y=5, z=5}
{x=3, y=6, z=15}
判断覆盖 branch coverage
如图上标记,每个判断之后都有T和F的结果。
判断覆盖则是在能够在每个判断取至少一个T和至少一次F的测试用例覆盖。
一组测试用例:
{x=4, y=5, z=5}
{x=2, y=5, z=5}
收藏 纠错
推荐文章
1 . 面向全球的应用的系统架构
2 . 一个规则引擎的可视化方案
3 . 数据库-三范式优化与不推荐使用外键
4 . 反制 Webdriver - 从 Bot 到 RCE 进发
5 . 深入浅出 WebRTC AEC(声学回声消除)
6 . Julia语言程序基础
最后&资源分享
下面是我收集的一些视频资源包
对于软件测试的的朋友来说应该是最全面最完整的备战仓库了,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你!大家也可以加群qq(**644956177)**群里有技术交流和资源分享。
关注我的微信公众号【程序媛木子】免费获取
白盒测试各种覆盖详解相关推荐
- 白盒测试与黑盒测试--(详解)
一.白盒测试 1.概念 白盒测试也称为结构测试或逻辑驱动测试,是针对被测单元内部是如何进行工作的测试.它根据程序的控制结构设计测试用例,主要用于软件或程序验证. 白盒测试法检查程序内部逻辑结构,对所有 ...
- 【算法】棋盘覆盖详解,基础教程~
棋盘覆盖分析与实现 一.什么是棋盘覆盖? 在一个 2^k * 2^k 个方格组成的棋盘中,若恰有一个方格与其他方格不同,则称该方格为一个特殊方格,且称该棋盘为一个特殊棋盘.显然,特殊方格在棋盘上出现的 ...
- 最小路径覆盖详解 超级详细(附带例题 Stock Charts(给了题目))
最小路径覆盖定义:在图G中找出一些路径,每条路径从起点走到终点,使所有点均被覆盖,且只被覆盖一次,选出的这些路径组成路径覆盖.如果找出最少的路径成为一个路径覆盖,则称为最小路径覆盖. 对于不包含圈的有 ...
- multiprocessing python_Python多线程/进程(threading、multiprocessing)知识覆盖详解
你好,我是goldsunC 让我们一起进步吧! 基本知识 在Python中有一个全局解释器锁GIL(Global Interpreter Lock).GIL源于Python设计之初的考虑,目的是使数据 ...
- 「软件测试4」一文详解四大典型的白盒测试方法
软件测试--详解白盒测试基本概念,四种白盒测试方法 这是我参与更文挑战的第3天,活动详情查看:更文挑战 在上一篇文章中,我们讲到了黑盒测试.黑盒测试相较于白盒测试来说比较简单,不需要了解程序内部的代码 ...
- 测试知识详解(一)黑盒白盒测试
测试中有两大重要测试方法:黑盒测试.白盒测试 黑盒测试也叫功能测试,把被测试软件当成一个黑盒子,不关心内部结构是什么,只关心软件的输入与输出数据. 白盒测试是基于代码的测试,需要打开盒子,去研究里面的 ...
- echart的关系图高亮_echarts鼠标覆盖高亮显示节点及关系名称详解
js代码,使用了jquery和echarts.js,用的是源代码那版,因为待会要进源代码里修改-- 其实js代码和echart官网demo的代码完全没区别-- 普通的力图设置,只要加上focusNod ...
- python代码覆盖率测试_unittest+coverage单元测试代码覆盖操作实例详解_python
这篇文章主要为大家详细介绍了unittest+coverage单元测试代码覆盖操作的实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 基于上一篇文章,这篇文章是关于使用coverage来实现代码 ...
- linux解压zip覆盖目录,linux下压缩与解压(zip、unzip、tar)详解
最近经常在linux上进行打包压缩解压,从网上收集整理并结合自己的常用的,跟大家分享一下下,废话不多说,进入正题. 1.zip 压缩 如果是直接压缩几个文件,那就可以直接使用命令 zip newfil ...
最新文章
- Linux调用外部服务出现java.net.UnknownHostException
- 粉丝提问:有没有人会做彩虹表
- 数据结构之排序算法:基础概念
- 王思聪又双被限制消费了!
- 传智php入学测试题,传智播客PHP 0912 基础班 入学测试题
- python初学者必背函数_新手必看python vlog 1: 函数
- 8篇文章系统梳理ARM开发中的文件类型
- 06. 当心C++编译器最烦人的分析机制
- 通过脚本执行sql语句
- linux怎样打开终端命令,Linux命令-初学者入门之打开终端
- PyQt4入门教程(1)_PyQt介绍及准备工作
- 【MATLAB】求偏导数
- android 毫秒 计时器,Android 计时器: CountDownTimer和JobService
- vue代码怎么变成小程序_从项目中由浅入深的学习vue,微信小程序和快应用 (1)
- view函数--python
- Samba TDB 数据库 在嵌入式中的使用
- 2023王道数据结构P40题二.1,关于是否会断链的问题
- 情人节有哪些礼物可以送给男朋友的,情人节送礼推荐
- Dell 灵越7370 装机过程遇到硬盘枷锁 bitlocker锁解决方法
- 【通州建设】地铁S6线更名为21号线!途径通州多站!
热门文章
- 用命令行cmd 编译小程序
- AD18批量修改一部分或者全部器件位号的方法!
- c语言书籍推荐国二,推荐国二c语言笔试题库(含答案)可转TXT.doc
- 阿里云轻量应用服务器 搭建配置详解
- Github(Gitee)之 建立 .gitignore 文件 屏蔽一些文件上传,不上传自己不需要的文件或者文件夹
- 关于html文档的描述不正确的是,下面关于HTML语言说法不正确的是(分).ppt
- “数字裂变”宇宙,华为云与和伙伴组成“银河护卫队”
- 使用Hive的窗口函数进行数据分析——以股票市场分析为例
- CF #826 (Div. 3) - D(思维,模拟),E(DP)
- 奇怪的知识又增加了8——Wi-Fi