语句覆盖、条件覆盖、判定覆盖、条件-判定覆盖、路径覆盖

2023-11-10

白盒测试是结构测试,主要对代码的逻辑进行验证。
逻辑覆盖率:语句覆盖<条件覆盖<判定覆盖<条件-判定覆盖<组合覆盖<路径覆盖

例子

一、语句覆盖

 
最基础的覆盖,只要每一个执行处理框内的语句都能执行就可,不用关注判断逻辑。
如题:其路径为1-2-4-5.
所以,其测试用例设计为:TT

例如:a=1,b=1,c=2


二、判断覆盖


判断覆盖一定包含语句覆盖,反之不然。判断覆盖需要每一个判断框取真和取假至少一次,重点需要关注判断框即可。
如题:其路径为1-2-6 + 3-4-5
所以,其测试用例设计为:TF+FT或者TT+FF

例如:a=1,b=1,c=1 和 a=0,b=0,c=2


三、条件覆盖


由于判断覆盖不能保证判断框内的&&和||类型条件的真假处理,而条件覆盖则是关注判断框内条件的真假执行情况,每一个条件的取值必须至少包含一真一假。重点关注判断框内的条件真假取值情况。
如题:其路径为1-2-6 或 3-4-5
所以,其测试用例设计为:

a >0 Ta
a <0 Fa
b >0 Tb
b <0 Fb
a >1 Taa
a <1 Faa
c =2 Tc
c !=2 Fc

TaTbTaaTc 和FaFbFaaFc 或者 TaFbTaaFc 和 FaTbFaaTc

例如:a=2,b=-1,c=1 和 a=-1,b=1,c=2


四、条件-判断覆盖


条件判断覆盖即要同时满足条件覆盖和判断覆盖。需要结合条件判断的表和图中的判断框进行判断。
如题:
所以,其测试用例设计为:TaTbTaaTc 和FaFbFaaFc 或者 TaTbFaaFc 和FaFbTaaTc

例如:a2=,b=1,c=2 和 a=-1,b=-1,c=1


五、路径覆盖


每一条路径都要执行一遍,关注的是起止点之间的路径。
如题:1-2-6 1-2-4-5 3-4-5 3-6

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

语句覆盖、条件覆盖、判定覆盖、条件-判定覆盖、路径覆盖 的相关文章

随机推荐

  • Sentinel--服务容错

    目录 1 高并发带来的问题 2 服务雪崩效应 3 常见容错方案 1 高并发带来的问题 在微服务架构中 我们将业务拆分成一个个的服务 服务与服务之间可以相互调用 但是由于网络原因或者自身的原因 服务并不能保证服务的100 可用 如果单个服务出
  • 置信度&置信区间,这篇讲解我给100分!

    今天这篇聊聊统计学里面的置信度和置信区间 好像没怎写过统计学的东西 这篇试着写一写 1 点估计 在讲置信度和置信区间之前先讲讲点估计 那什么是点估计呢 给你举两个例子你就知道了 现在你想要知道一个学校学生的身高情况 你可以把所有的学生测量一
  • 创造与魔法为什么显示无法连接服务器,创造与魔法为什么显示登录失败

    发布时间 2018 04 19 一些玩家遇到数据库登录失败的问题 不知道如何解决 进不了游戏很是烦恼 下面小编就为大家带来十三号星期五数据库登录失败解决方法 遇到这类问题的小伙伴快来看看吧 十三号星期五数据库登录失败解决方 标签 攻略 发布
  • 哈夫曼编码(Huffman Coding)多图详细解析

    哈夫曼编码 哈夫曼编码 又称为霍夫曼编码 它是现代压缩算法的基础 假如我们需要将字符串ABBBCCCCCCCCDDDDDDEE通过二进制编码进行传输 那应该怎么将字符转换为二进制码 方法一 转换为ASCII码 直接将字母转换为对应的ASCI
  • vue【封装 Vue.js 组件库】

    一 组件库有哪些 element iu iview CDD Component Driven Development 自下而上 从组件级别开始 到页面级别结束 CDD 的好处 组件在最大程度被重用 并行开发 可视化测试 二 组件库开发流程
  • git 之 gitlab 私有项目仓库的搭建与使用

    gitlab 私有项目仓库的搭建与使用 一 gitlab简介 二 gitlab安装 三 gitlab使用 一 gitlab简介 GitLab是一个利用 Ruby on Rails 开发的开源应用程序 实现一个自托管的Git项目仓库 可通过W
  • 自用.vimrc文件

    set paste set nocompatible 关闭 vi 兼容模式 syntax on 自动语法高亮 set number 显示行号 set cursorline 突出显示当前行 set ruler 打开状态栏标尺 set shif
  • 机器学习--聚类(12)

    一 基本概念 聚类的概念 一种无监督的学习 事先不知道类别 自动将相似的对象归到同一个簇中 应用场景 文档分类器 客户分类 保险欺诈检测 乘车数据分析 二 距离计算 对于有序距离 其中P 1为曼哈顿距离 P 2为欧氏距离 对于无序距离 使用
  • ASCII码-shellcode的技巧

    网上已经有成熟的工具了 所以就简单记录一下工具怎么用吧 https github com TaQini alpha3 https github com veritas501 ae64 git https github com rcx she
  • Python 集合set添加删除、交集、并集、集合操作符号

    在Python中集合set是基本数据类型的一种 它有可变集合 set 和不可变集合 frozenset 两种 创建集合set 集合set添加 集合删除 交集 并集 差集的操作都是非常实用的方法 1 创建集合 set类是在python的set
  • Prometheus Node_exporter 详解

    Basic CPU Mem Disk Info https www cnblogs com qianyuliang p 10479515 htmlBasic CPU Mem Disk Gauge https www cnblogs com
  • 设计一个类,求圆的周长

    define CRT SECURE ND WARNINGS include
  • 单片机的硬件结构(51单片机的组成)

    文章目录 51单片机的组成 优点 各部件的功能 引脚的功能 1 电源引脚 1 VCC 40脚 5V电源引脚 2 VSS 20脚 数字接地 2 时钟引脚 1 XTAL1 19脚 2 XTAL2 18脚 3 控制引脚 1 RST RESET 9
  • JDBC访问数据库步骤

    目录 一 概念 1 1 JDBC是什么 1 2 JDBC的本质 为什么要面向接口编程 为什么SUN制定一套JDBC接口 二 JDBC编程步骤 2 1 创建maven项目 2 2 添加maven依赖 2 2 1 MySQL依赖 2 2 2 O
  • C语言中怎么使用scanf函数读取空格

    C语言中怎么使用scanf函数读取空格 正则表达式 n 是scanf函数中用于读取字符串的格式说明符之一 它的含义是匹配除换行符 n 以外的所有字符 具体来说 n 会使scanf函数读取输入中的字符 直到遇到换行符为止 它会将匹配到的字符存
  • MySQL服务启动异常:Failed to start MySQL Server. mysqld.service holdoff time over, scheduling restart.

    MySQL服务启动异常 systemctl status mysqld mysqld service MySQL Server Loaded loaded usr lib systemd system mysqld service enab
  • 单链表简单操作

    include
  • 【华为云技术分享】跟唐老师学习云网络 - Kubernetes网络实现

    当今K8s独霸天下之时 咱们站在更高的角度 好好的看看K8s的网络是以什么理念构筑的 以及一个容器集群的好保姆 是如何分别照顾 南北流量和东西流量的 1 简单介绍下Kubernetes 略 容器集群管理的事实标准了 不知道要打屁股 ps 本
  • Doris--基础--07--修改查询超时时间

    Doris 基础 07 修改查询超时时间 1 问题 doris默认最长查询时间为300s 如果仍然未完成 会被cancel掉 2 修改查询超时时间 2 1 查看 查询超时时间 SHOW VARIABLES LIKE query timeou
  • 语句覆盖、条件覆盖、判定覆盖、条件-判定覆盖、路径覆盖

    白盒测试是结构测试 主要对代码的逻辑进行验证 逻辑覆盖率 语句覆盖 lt 条件覆盖 lt 判定覆盖 lt 条件 判定覆盖 lt 组合覆盖 lt 路径覆盖 例子 一 语句覆盖 最基础的覆盖 只要每一个执行处理框内的语句都能执行就可 不用关注判