(二)动态白盒测试(含逻辑覆盖例子)

2023-11-14

一、动态白盒测试(重点)
1、概念
动态:测试运行中的程序 白盒:洞察盒子里面,检查代码并观察运行状况
生成测试数据、分析测试结果的工作量大,使开展测试工作费时、费力、费人
二、动态白盒测试常用的测试用例方法
a.逻辑覆盖
语句覆盖;分支(判定覆盖);条件覆盖;分支-条件覆盖;条件组合覆盖;路径覆盖
b.基本路径覆盖(重点)
c.循环覆盖
这里写图片描述
void DoWork(int x,int y,int z)
{
int k=0,j=0;
if((x>3)&&(z<10))
{
k=x*z-1;
j=sqrt(k); //语句块1
}
if((x==4)||(y>5))
{
j=x*y+10; //语句块2
}

j=j%3;           //语句块3

}
1、语句覆盖
基本思想:设计若干条测试用例,保证程序中所有可执行语句 ,至少被执行一次

x=4 z=9  y=5

2、判定(分支)覆盖
基本思想:设计若干条测试用例,保证程序中每一个判定的真分支、假分支至少被执行一次

  x=4 z=9 y=5  (11)
  x=2 z=9 y=2  (00)

3、条件覆盖
基本思想:设计若干条测试用例,保证每个判定中每个条件的取值情况,至少被执行一次

   x=4 z=9 y=6        11 11 
   x=2 z=11 y=4       00 00  

注意:满足条件覆盖,不一定满足判定覆盖
还可以这样设计测试用例:(以下第二个判定一直为真)
x=2 z=11 y=6 00 01
x=4 z=9 y=4 11 10

4、判定-条件覆盖
基本思想:设计若干条测试用例,保证程序中每个判定中的每个条件的取值情况至少执行一次,并且要保证每个判定的所有取值情况至少执行一次

   x=2 z=11 y=4     00 00
   x=2 z=11 y=4     11 11

5、条件组合
判定1中的条件1:x>3 条件2: z<10 2^2
判定2中的条件1:x=4 条件2: y>5 2^2

 00 00:x=2 z=11 y=4
 01 01:x=1 z=9 y=6
 10 10:x=4 z=11 y=3
 11 11:x=4 z=9 y=6

6、路径覆盖

   1-2-4:x=4 z=9 y=6  11
   1-2-5:x=5 z=9 y=4  10
   1-3-5:x=2 z=11 y=4 00
   1-3-4: x=2 z=9 y=6  01

优点:这种测试方法可以对程序进行彻底的路径测试
缺点:需要设计大量、复杂的测试用例,使得工作量呈指数级增长,而且不见得把所有的条件组合都覆盖

7、条件组合覆盖结合路径覆盖

x=4 z=9 y=6  11 11
x=5 z=9 y=4  11 00
x=2 z=11 y=4 00 00
x=2 z=9 y=6  01 01
x=4 z=11 y=3 10 10 (路径覆盖没有的情况)

这里写图片描述
===满足判定-条件覆盖,一定满足判定覆盖,一定满足条件覆盖
===满足条件覆盖,不一定满足判定覆盖
===满足判定覆盖,一定满足语句覆盖

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

(二)动态白盒测试(含逻辑覆盖例子) 的相关文章

  • 闲扯测试工程师之发展(觉得不错,拿来与大家分享)

    一 测试工程师的历史 我算是接触互联网测试工作比较早的一批人了 在2010年研二实习的时候就开始在一家加拿大的企业做测试开发工程师了 2012年毕业的时候 貌似互联网行业开始有专职的测试人员 而且不少中小型公司还没有专职的测试人员 程序的质
  • 软件测试--静态白盒测试

    软件测试 静态白盒测试 静态测试是指测试非运行部分 检查和审查 静态白盒测试是指在不执行软件的条件下条理地仔细审查软件设计 体系结构和代码 从而找出软甲缺陷的过程 又称为结构化测试 静态白盒测试的好处 能够尽早发现软件缺陷 并且能够为黑盒测
  • 白盒测试案例设计(我爷爷都能看懂)

    目录 一 白盒测试的概念及特点 1 什么是白盒测试 2 白盒测试的特点 二 白盒测试设计方法 1 静态设计方法 2 动态设计方法 三 逻辑覆盖法 1 语句覆盖 2 判定覆盖 3 条件覆盖 4 判定条件覆盖 5 条件组合覆盖 6 路径覆盖 四
  • 行业合规标准MISRA如何帮助C/C++代码程序员高效地编写代码?

    MISRA标准包含编写软件的准则和代码规则 汽车 航空航天和国防 医疗 工业自动化和铁路等行业都使用该标准来帮助他们的开发人员编写源代码 以确保软件的安全 安保和可靠性 由于嵌入式软件工程师使用C和C 编程语言来编写安全关键型软件的代码 M
  • 代码审查领域所面临的瓶颈分析

    代码审查是检查代码中存在缺陷的重要手段 通常分为两阶段进行 一个阶段在代码解析阶段进行 主要应用词法分析 语法分析以及控制流分析等技术检测同数据传递无关的代码缺陷 另外一个阶段是在代码解析后进行 主要应用数据相关路径遍历等技术检测同数据相关
  • 语句覆盖、条件覆盖、判定覆盖、条件-判定覆盖、组合覆盖、路径覆盖

    文章目录 语句覆盖 判定覆盖 条件覆盖 条件 判定覆盖 组合覆盖 路径覆盖 逻辑覆盖率 语句覆盖 lt 条件覆盖 lt 判定覆盖 lt 条件 判定覆盖 lt 组合覆盖 lt 路径覆盖 语句覆盖 基本思想 设计用例 使程序中的每个可执行语句至
  • 【软件测试】黑盒测试、白盒测试、静态测试

    文章目录 一 黑盒测试 1 定义 2 分类 3 常见黑盒测试方法 1 功能测试方法 设计测试用例 2 性能测试方法 3 可用性测试方法 4 黑盒测试方法的实际使用 5 黑盒测试经验 二 白盒测试 1 定义 2 程序结构分析 3 逻辑覆盖 4
  • 软件测试之检查产品说明书

    场景 学习 软件测试 第4章节 检查产品说明书 关于黑盒测试和白盒测试 黑盒测试只需要知道软件要做什么 而无法看到盒子里的软件是怎么运行的 只要进行一些输入 然后输出结果 目前我们做的基本上是这种测试 我们知道输入和预计输出 只要把按操作输
  • 大数据平台测试-白盒测试静态方法解析(我奶奶都能看懂)

    软件测试从某种维度上分为黑盒测试和白盒测试 黑盒测试更多的是增啥改查 也就是功能测试 关于功能测试参考这里 增删改查测试场景 菜市场的大妈都能看懂 关于白盒测试的资料参考这里 白盒测试案例设计 我爷爷都能看懂 注意并不是说白盒测试一定就是要
  • 静态分析领域中弱点、不足、缺陷、故障等概念之间的关系

    在CWE范畴内 讨论的核心内容是 弱点 及 不足 而在软件静态分析范畴内 研究的核心内容是 缺陷 及 故障 CWE已经越来越多的被静态分析用于重要参照标准 因此有必要将这几个关键概念之间的关系梳理清楚 弱点 Weakness 定义 CWE中
  • Spring Boot+Mybatis实现增删改查接口开发+测试(超详细建议收藏)

    前言 Java也是测试必知必会的内容 特别是现在类似spring boot 等Java框架更是成为主流 之前实现的图书增删改查是用Python实现的 没看过的请移步 Flask mysql 实现增删改查接口开发 测试 图文教程附源码 本次给
  • 软件测试实验二 白盒测试

    一 实验目的 1 掌握等逻辑覆盖测试法 2 掌握基本路径测试法 3 掌握基于Junit的单元测试 二 实验内容 1 为以下判断等级的程序段设计一组测试用例 要求分别满足语句覆盖 判定覆盖 条件覆盖 判断 条件覆盖 条件组合覆盖 public
  • 白盒测试流程图及测试用例设计(软件测试实验报告)

    白盒测试流程图及测试用例设计 1 课程设计目的 1 理解白盒测试原理 2 绘制白盒测试流程图 2 课程设计方法 1 绘制流程图 2 设计测试用例 3 课程设计内容 题目 输入x和y值 首先判断x和y是否为正数 如果是正数 那么计算两者的数值
  • 3分钟学会在C ++中以编程方式合并Excel工作表中的单元格

    合并和取消合并单元格是Microsoft Excel的一项简单且常用功能 合并单元格可能会在某些情况下很有用 例如 当工作表中有多个列共享相同的标题时 可以合并列上方的单元格以使其具有共同的标题 如果不再需要合并的单元格 则可以轻松地取消合
  • 软件测试复习(5)----基本路径测试中的细节

    在做基本路径测试的题中又有了新的发现 希望大家可以注意 另外 如果你是第一次看 可以先看一下我之前讲的基本路径方法的步骤 先看一下题目 我们不讲如何做这道题 只是讲一下我通过这道题关于知识点新的理解 题目 答案 知识点 细节 逻辑与 逻辑或
  • (二)动态白盒测试(含逻辑覆盖例子)

    一 动态白盒测试 重点 1 概念 动态 测试运行中的程序 白盒 洞察盒子里面 检查代码并观察运行状况 生成测试数据 分析测试结果的工作量大 使开展测试工作费时 费力 费人 二 动态白盒测试常用的测试用例方法 a 逻辑覆盖 语句覆盖 分支 判
  • 白盒测试(程序流程图)

    白盒测试又称结构测试 透明盒测试 逻辑驱动测试或基于 代码的测试 白盒测试是一种 测试用例设计方法 盒子指的是被测试的 软件 白盒指的是盒子是可视的 你清楚盒子内部的东西以及里面是如何运作的 白盒 法全面了解程序内部逻辑结构 对所有逻辑路径
  • 软件工程——第7章实现知识点整理

    本专栏是博主个人笔记 主要目的是利用碎片化的时间来记忆软工知识点 特此声明 文章目录 1 实现由哪两个部分组成
  • 软件测试—第六章白盒测试基本路径测试法

    一 基本路径法 1 为什么使用基本路径法 一是降低了测试用例设计的难度 只要搞清了各种流程 就可以设计出高质量的测试用例来 而不用太多测试方面的经验 二是在测试时间较紧的情况下 可以有的放矢的选择测试用例 而不用完全根据经验来取舍 2 什么
  • 黑盒测试与白盒测试的定义与区别

    白盒测试 是指实际运行被测程序 通过程序的源代码进行测试而不使用用户界面 这种类型的测试需要从代码句法发现内部代码在算法 溢出 路径和条件等方面的缺点或者错误 进而加以修正 黑盒测试 又称功能测试 数据驱动测试或基于规格说明的测试 是通过使

随机推荐

  • 【unity3d】Layers的控制/LayerMask的使用

    文章目录 unity Layers的控制 LayerMask的使用 Layers 概述 演示效果 Layers的设置 gameobject设置Layer 手动设置 代码设置 LayerMask的使用 Camera的culling mask的
  • TypeScript基础学习

    最终还是没有逃过ts的魔爪 哈哈哈也不能说魔爪 工作这段时间 感觉每天都在学习新的知识 最近在看源代码的时候看到了部分源码是用ts写的 之前没接触过 今天就来学习一下ts 文章参考 TypeScript超详细入门教程 TypeScript
  • python练习题3

    1 数列翻转 reverse 问题描述 编写程序对列表中的数据进行翻转转换 即将数组中第一个数和最后一个数交换 第二个数和倒数第二个数交换 依此类推 样例输入 4 100 200 300 400 样例输出 400 300 200 100 a
  • bpython bs4用哪个解释器好_Python之解BS4库如何安装与使用?正确方法教你

    Beautiful Soup 库一般被称为bs4库 支持Python3 是我们写爬虫非常好的第三方库 因用起来十分的简便流畅 所以也被人叫做 美味汤 目前bs4库的最新版本是4 60 下文会介绍该库的最基本的使用 具体详细的细节还是要看 官
  • Cocos2d-android游戏引擎

    什么是游戏引擎 游戏引擎是指一些已编写好的可编辑游戏系统或者一些交互式实时图像应用程序的核心组件 这些系统为游戏设计者提供各种编写游戏所需的各种工具 其目的在于让游戏设计者能容易和快速地做出游戏程式而不用由零开始 Cocos2d家族 coc
  • 数据结构小知识------时间与空间复杂度

    本章思维导图 一 时间复杂度 1 1时间复杂度的概念 什么是时间复杂度呢 时间复杂度其实就是一个程序运行时它的指令运行的次数 在这里 程序默认每条指令的运行时间是一样的 所以时间复杂度就可以理解为是程序内指令的运行次数 说一千道一万 不如来
  • Java 使用EasyExcel解析导入的Excel文件

    最近在做项目时 有遇到需要使用excel导入的场景 以前也有写过使用 Apache poi 来解析导入数据 但整体解析逻辑比较繁琐 封装成工具类后也不是很好用 这个可能是我个人技术原因 和poi无关 这次开发时 在网上找了个更加简洁的方式
  • Python循环控制语句

    Python循环控制语句 生活中循环的例子也很多 例如 听歌的时候进行循环等等 程序中循环的效果和生活中的循环效果相同 Python中的循环是往复的执行某一段代码 结构while循环 初始条件设置 通常是一个计数器 来控制条件表达式是否成立
  • OpenStack nova-compute 报TooOldComputeService版本过低问题

    项目场景 安装openstack的nova compute部分 问题描述 启动nova conductor时报错 查看nova conductor log 发现如下错误 Current Nova version does not suppo
  • android aosp,安卓源码AOSP下载使用的正确姿势

    安卓源码AOSP下载使用的正确姿势 从同步源码到编译完成 整个过程应至少准备200G空间 编译时需要的内存数与编译线程数相关 博主实测比较极限的配置是4核8G 超过这个范围将触发swap交换导致编译速度急剧下降 开始搞 注 以下 号所有内容
  • mac运行ps特别慢_PS CC 2019 太卡,运行特别慢?这几个优化提速技巧我再说一遍...

    只要设置好这几个选项 让你的 PS CC 2019 运行如飞 曾经写过关于PS优化提速的教程 但总有粉丝问我PS很卡很慢 怎么办 所以 这几个核心的 PS 优化提速技巧我再说一遍 先声明一下 我这里讲的优化提速是指你电脑配置足够的情况下PS
  • ​LeetCode刷题实战33:搜索旋转排序数组

    来源 https www cnblogs com techflow p 12441002 html 算法的重要性 我就不多说了吧 想去大厂 就必须要经过基础知识和业务逻辑面试 算法面试 所以 为了提高大家的算法能力 这个公众号后续每天带大家
  • 【Monkey】Android压力测试

    一 简单介绍一下Monkey Monkey工具直接运行在设备或模拟器的adb shell中 生成用户或系统的伪随机事件流 二 Monkey命令 1 adb shell monkey p package 事件数 50 随机完成50个事件 ad
  • Unity架构之域重新加载

    域重新加载 域重新加载将重置脚本状态 默认情况下会启用域重新加载 此功能为您提供了全新的脚本状态 并会在您每次进入运行模式时重置所有静态字段和已注册的处理程序 这意味着每次在 Unity Editor 中进入运行模式时 您的项目就会采用与在
  • pkpm字体库下载_pkpm字体库转到cad

    等级 文件 5MB 格式 rar 五层框架结构PKPM模型 CAD配筋图纸 建筑说明 本工程为唐山市市医院办公大楼 建筑面积约为 4000平方米 本建筑共五层 为框架结构 抗震烈度按8度设防 图纸包括 唐山医院建筑图 CAD配筋图纸以及pk
  • matlab实现以不同信噪比在干净语音信号中叠加噪声

    原理公式 信噪比计算公式 信号功率和噪声功率之比 也是信号幅度和噪声幅度的平方之比 一般情况下我们使用分贝的形式 即单位是dB 其值为对数信号与噪声功率比的十倍 matlab实现代码 function y noise add noise m
  • shopify 前端开发遇到的问题及解决(部分)

    问题 gallery不同部分的小li互相干扰 解决 修复了小li互相干扰的bug 原因 其实不单单需要修改小li的class 并且需要修改小li的控件 也就是是loopli 不然会互相干扰 shopify的section中jQuery能够拿
  • MongoDB 内置角色

    1 数据库用户角色 针对每一个数据库进行控制 read 提供了读取所有非系统集合 以及系统集合中的system indexes system js system namespacesreadWrite 包含了所有read权限 以及修改所有非
  • 面试官问:你熟悉哪些HashMap的封装扩展类?

    我习惯了无所谓 却不是真的什么都不在乎 请关注 源码猎人 目录 简介 LinkedHashMap 源码解读 LinkedHashMap属性 LinkedHashMap构造函数 LinkedHashMap 方法 LinkedHashMap 内
  • (二)动态白盒测试(含逻辑覆盖例子)

    一 动态白盒测试 重点 1 概念 动态 测试运行中的程序 白盒 洞察盒子里面 检查代码并观察运行状况 生成测试数据 分析测试结果的工作量大 使开展测试工作费时 费力 费人 二 动态白盒测试常用的测试用例方法 a 逻辑覆盖 语句覆盖 分支 判