【软考】白盒测试

目录

          • 1. 说明
          • 2. 逻辑覆盖
            • 2.1 说明
            • 2.2 语句覆盖
            • 2.3 判定覆盖
            • 2.4 条件覆盖
            • 2.5 判定/条件覆盖
            • 2.6 条件组合覆盖
            • 2.7 路径覆盖
          • 3. 循环覆盖
          • 4. 基本路径测试
          • 5. 测试原则

1. 说明
  • 1.白盒测试也称为结构测试,根据程序的内部结构和逻辑来设计测试用例,对程序的路径和过程进行测试,检查是否满足设计的需要。
  • 2.白盒测试常用的技术是逻辑覆盖、循环覆盖和基本路径测试。
2. 逻辑覆盖
2.1 说明
  • 1.逻辑覆盖考察用测试数据运行被测程序时对程序逻辑的覆盖程度,主要的逻辑覆盖标准有语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖6种。
2.2 语句覆盖
  • 1.是指选择足够的测试数据,使被测试程序中的每条语句至少执行一次。
  • 2.语句覆盖对程序执行逻辑的覆盖很低,因此一般认为它是很弱的逻辑覆盖。
2.3 判定覆盖
  • 1.判定覆盖是指设计足够的测试用例,使得被测程序中的每个判定表达式至少获得一次真值和假值。
  • 2.程序中的每一个取真分支和假分支至少都通过一次,因此判定覆盖也称为分支覆盖。
  • 3.判定覆盖比语句覆盖更强一些。
2.4 条件覆盖
  • 1.条件覆盖是指构造一组测试用例,使得每一判定语句中每个逻辑条件的各种可能的值至少满足一次。
2.5 判定/条件覆盖
  • 1.判定/条件覆盖是指设计足够的测试用例,使得判定中每个条件的所有可能取值(至少出现一次),并使每个判定本身的判定结果(真/假)也至少出现一次。
2.6 条件组合覆盖
  • 1.是指设计足够的测试用例,使得每个判定中条件的各种可能值的组合都至少出现一次。
  • 2.满足条件组合覆盖的测试用例是一定满足判定覆盖、条件覆盖和判定/条件覆盖的。
2.7 路径覆盖
  • 1.是指覆盖被测试程序中所有可能的路径。
3. 循环覆盖
  • 1.执行足够的测试用例,使得循环中的每个条件都得到验证。
4. 基本路径测试
  • 1.基本路径测试法是在程序控制流图的基础上通过分析控制流图的环路复杂性,导出基本可执行路径集合,从而设计测试用例。
  • 2.设计出的测试用例要保证在测试中程序的每一条独立路径都执行过,即程序中的每条可执行语句至少执行一次。
  • 3.所有条件语句的真值状态和假值状态都测试过。
  • 4.路径测试的起点是程序控制流图。
  • 5.流程控制流图中的结点代表包含一或多个无分支的语句序列,边代表控制流。
5. 测试原则
  • 1.程序模块中的所有独立路径至少执行一次。
  • 2.在所有的逻辑判断中,取“真”和取“假”的两种情况至少都能执行一次。
  • 3.每个循环都应在边界条件和一般条件下各执行一次。
  • 4.测试程序内部数据结构的有效性等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/781148.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

认证授权auth

什么是认证授权 认证授权包含 认证和授权两部分。 什么是用户身份认证? 用户身份认证即当用户访问系统资源时,系统要求验证用户的身份信息,身份合法方可继续访问常见的用户身份认证表现形式有 用户名密码登录微信扫码登录等 什么是用户授…

【数据结构】链表带环问题分析及顺序表链表对比分析

【C语言】链表带环问题分析及顺序表链表对比分析 🔥个人主页:大白的编程日记 🔥专栏:C语言学习之路 文章目录 【C语言】链表带环问题分析及顺序表链表对比分析前言一.顺序表和链表对比1.1顺序表和链表的区别1.2缓存利用率&#…

ID3算法决策树

步骤: 先计算出信息量;信息熵;信息增量; 再比较信息增量的大小,确定分类依据。 信息量: 信息熵: 信息增益:

【网络安全】实验五(身份隐藏与ARP欺骗)

一、本次实验的实验目的 (1)了解网络攻击中常用的身份隐藏技术,掌握代理服务器的配置及使用方法 (2)通过实现ARP欺骗攻击,了解黑客利用协议缺陷进行网络攻击的一般方法 二、搭配环境 打开三台虚拟机&#…

IntelliJ IDEA 同时多行同时编辑操作快捷键

首先 点击要编辑的地方,长按鼠标左键不放,同时按住 Ctrl Shift Alt,然后就可以进行多行编辑了

【Unity】RPG2D龙城纷争(八)寻路系统

更新日期:2024年7月4日。 项目源码:第五章发布(正式开始游戏逻辑的章节) 索引 简介一、寻路系统二、寻路规则(角色移动)三、寻路规则(角色攻击)四、角色移动寻路1.自定义寻路规则2.寻…

如何根据控制框图写传递函数

控制框图(也称为方块图或信号流图)是控制系统工程中常用的一种图形表示方法,用于描述系统中各个组件之间的关系以及信号流向。传递函数则是描述线性时不变系统动态特性的数学模型,通常用于分析和设计控制系统。 识别组件&#xff…

Learn To Rank

在信息检索中,给定一个query,搜索引擎召回一系列相关的Documents,然后对这些Documents进行排序,最后将Top N的Documents输出。 排序问题最关注的是各Documents之间的相对顺序关系,而不是各个Documents的预测分最准确。…

GD32实战篇-双向数控BUCK-BOOST-BOOST升压理论基础

本文章基于兆易创新GD32 MCU所提供的2.2.4版本库函数开发 向上代码兼容GD32F450ZGT6中使用 后续项目主要在下面该专栏中发布: https://blog.csdn.net/qq_62316532/category_12608431.html?spm1001.2014.3001.5482 感兴趣的点个关注收藏一下吧! 电机驱动开发可以跳转…

即时通讯平台项目测试(登录/注册页面)

http://8.130.98.211:8080/login.html项目访问地址:即时通讯平台http://8.130.98.211:8080/login.html 本篇文章进行登录和注册页面的测试。自动化脚本的依赖在文章末尾。 登录页面测试 UI测试 测试环境:Win11;IntelliJ IDEA 2023.2&#…

C语言课设--读取文件并统计数据

读取文件并统计数据 // 统计记事本英文字符数 //功能 &#xff1a; 读 文件 a.txt 统计出各种 数字 大写字母 小写字母 0~9 A~Z a ~z各有多少个 程序主体框架如下&#xff1a; #include<stdio.h> int a[128]{0};//其中数组元素a[i]保存 ASCII 码为i的字符的数量 v…

css样式学习样例之边框

成品效果 边框固定 .login_box{width: 450px;height: 300px;background-color: aliceblue;border-radius: 3px;position: absolute;left: 50%;top: 50%;transform: translate(-50%,-50%); }这段CSS代码定义了一个名为.login_box的类的样式&#xff0c;它主要用于创建一个登录框…

【在Linux世界中追寻伟大的One Piece】HTTPS协议原理

目录 1 -> HTTPS是什么&#xff1f; 2 -> 相关概念 2.1 -> 什么是"加密" 2.2 -> 为什么要加密 2.3 -> 常见的加密方式 2.4 -> 数据摘要 && 数据指纹 2.5 -> 数字签名 3 -> HTTPS的工作过程 3.1 -> 只使用对称加密 3.2 …

Linux系统安装软件包的方法rpm和yum详解

起因&#xff1a; 本篇文章是记录学习Centos7的历程 关于rpm 常见命令 1&#xff09;查看已经安装的软件包 rpm -q 软件包名 2&#xff09;查看文件的相关信息 rpm -qi 软件包名 3&#xff09;查看软件包的依赖关系 就是说要想安装这个软件包&#xff0c;就必须把一些前…

亚信安全发布2024年6月威胁态势,高危漏洞猛增60%

近日&#xff0c;亚信安全正式发布《2024年6月威胁态势报告》&#xff08;以下简称“报告”&#xff09;&#xff0c;报告显示&#xff0c;6月份新增信息安全漏洞 1794个&#xff0c;高危漏洞激增60%&#xff0c;涉及0day漏洞占67.67%&#xff1b;监测发现当前较活跃的勒索病毒…

CountDownLatch内部原理解析

文章目录 1、CountDownLatch介绍1.1、功能介绍1.2、demo1.3、问题 2、前置知识2.1、AQS整体结构2.1.1、整体结构2.1.2、state属性2.1.3、head和tail属性 3、CountDownLatchAPI源码解析3.1、countDown方法3.1.1、Sync类3.1.2、releaseShared方法3.1.3、tryReleaseShared方法 3.2…

C++库函数--next_permutation(详细)

next_permutation介绍 用于生成某个序列的下一个排列。它通常在需要生成排列的问题中使用&#xff0c;比如全排列问题。 使用方法 普通序列 &#xff1a;next_permutation&#xff08;起始地址&#xff0c;末尾地址1&#xff09; 结构体&#xff1a;next_permutation&#…

解决 Layout Inspector无法查看Component Tree 布局层级信息 | Android Studio Koala

问题描述 Tool -> Layout Inspector 显示下图&#xff0c;无法生成.li文件查看Component Tree&#xff0c;变成实时的Preview并功能点击操作&#xff0c;跟模拟器一样。 原因&#xff1a;默认勾选了"Enable embedded Layout Inspector"&#xff0c;启用了嵌入式…

笔记本电脑内存不够

笔记本电脑内存不够是众多笔记本用户面临的常见问题&#xff0c;尤其是对于一些需要处理大型文件或者运行复杂软件的用户&#xff0c;这个问题可能会严重影响笔记本的使用体验。那么&#xff0c;我们应该如何解决笔记本电脑内存不够的问题呢&#xff1f;本文将从几个方面进行详…

flask使用定时任务flask_apscheduler(APScheduler)

Flask-APScheduler描述: Flask-APScheduler 是一个 Flask 扩展&#xff0c;增加了对 APScheduler 的支持。 APScheduler 有三个内置的调度系统可供您使用&#xff1a; Cron 式调度&#xff08;可选开始/结束时间&#xff09; 基于间隔的执行&#xff08;以偶数间隔运行作业…