黑盒测试与白盒测试的定义与区别

2023-11-19

  • 白盒测试:

是指实际运行被测程序,通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法、溢出、路径和条件等方面的缺点或者错误,进而加以修正。

  • 黑盒测试:

又称功能测试、数据驱动测试或基于规格说明的测试,是通过使用整个软件或某种软件功能来严格地测试,,而并没有通过检查程序的源代码,或者很清楚地了解该软件的源代码程序具体是怎样设计的。测试人员通过输入他们的数据看输出的结果,从而了解软件怎样工作。应该更适合测试网页游戏。

 

  • 区别:

     1、从定义上

白盒测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。而黑盒测试着重测试软件功能,它并不涉及程序的内部结构和内容特性。黑盒测试并不能取代白盒测试,它与白盒是互补的测试方法,它很可能发现白盒测试不易发现的其他类型错误。

    2、从测试目的上

黑盒测试的目的是检测是否有不正确或遗漏的功能;数据或者参数上,输入能否正确接收;是否有数据结构错误或外部信息访问错误;性能上是否能够满足要求;是否有初始化或终止性错误。而白盒测试的目的是通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致,而不顾它的功能。

     3、检测方式上

白盒测试是穷举路径测试,黑盒测试是穷举输入测试,这两种方法是基于完全不同的观点,反应了事物的两个极端,它们各有侧重和优势,但不能彼此替代。在现代的测试理念中,这两种测试方法不是截然分开的,而是交叉使用。

 

  • 白盒测试的优、缺点:

1、优点:

            1.能仔细考虑软件的实现

            2.可检测代码中的每条分支和路径 

            3.揭示隐藏在代码中的错误

            4.对代码的测试比较彻底

2、缺点:

           1.昂贵

           2.无法检测代码中遗漏的路径和数据敏感性错误

           3.不验证规格的正确性

  • 黑盒测试的优点:

   1、优点:

                1.对于子系统甚至系统效率要比白盒测试高

                2.测试人员不需要了解实现的细节(特定编程语言)

                3.测试人员和编程人员彼此独立 

                4.从用户的角度进行测试很容易理解和接受

                5.有助于暴露规格的不一致或有歧义的问题 

                6.测试用例可以在规格完成后马上进行

  2、缺点: 

                1.只有一小部分输入被测试到,要测试每个可能的输入几乎不可能。

                2.没有清晰、简明的规格,测试用例很难设计。

                3.如果测试人员不被告知开发人员已经执行过的用例,在测试数据上会存在不必要的重复。

                4.有很多程序路径没有被测试到。

                5.不能直接针对特定程序段测试,而这些程序段可能很复杂,有可能隐藏更多的问题。

                6.大部分和研究相关的测试都是直接针对白盒测试的。

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

黑盒测试与白盒测试的定义与区别 的相关文章

  • 谈了一下我对自动化测试的一些认识

    前言 从2019年末开始 到现在差不多半年多的时间 我这边投入了一部分精力用于项目的自动化测试建设工作 目前来看收益还是比较明显的 在这个过程中也加深了对自动化测试的理解 这边就总结下自己对自动化测试的认识 首先我想说下在开展自动化前后 我
  • 黑盒测试-等价类划分法与边界值分析法-三角形问题

    等价类划分法 等价类划分可以把全部输人数据合理划分为若干等价类 在每一个等价类中取个数据作为测试的输人条件 就可以用少量代表性的测试数据取得较好的测试效果 有效等价类 指对于程序规格说明来说 由合理的 有意义的输入数据构成的集合 利用它 可
  • 黑盒白盒测试的区别

    一 黑盒测试 Black box Testing 黑盒测试也称功能测试 测试中把被测的软件当成一个黑盒子 不关心盒子的内部结构是什么 只关心软件的输入数据与输出数据 不看软件代码 只对功能进行测试 对软件进行操作 观察结果是否和我们想象的一
  • 常见测试用例设计方法2---边界值划分

    目录 二 边界值的基本思想 三 边界值的作用 四 边界值点的定义 五 边界值和等价类的联系 六 上点 离点 内点的确定 1 闭区间 2 开区间 3 半开半闭区间 总结 七 常见边界值 字符 整数 八 边界值分析案例优化建议 九 开闭区间的区
  • 语句覆盖、条件覆盖、判定覆盖、条件-判定覆盖、组合覆盖、路径覆盖

    文章目录 语句覆盖 判定覆盖 条件覆盖 条件 判定覆盖 组合覆盖 路径覆盖 逻辑覆盖率 语句覆盖 lt 条件覆盖 lt 判定覆盖 lt 条件 判定覆盖 lt 组合覆盖 lt 路径覆盖 语句覆盖 基本思想 设计用例 使程序中的每个可执行语句至
  • WEB端测试点----整理

    目录 1 功能测试 1 1链接测试 1 2表单测试 1 3数据校验 1 4 cookies测试 1 5数据库测试
  • 功能测试基础之操作测试

    功能测试基础之操作测试 文章目录 功能测试基础之操作测试 操作测试简述 操作测试的验证标准 操作测试简述 操作测试主要是检验系统中的操作对象 菜单 按钮和输入框等 的设计是否符合软件设计标准和用户的操作习惯 页面内的各对象焦点是否顺序一致
  • 大数据平台测试-白盒测试静态方法解析(我奶奶都能看懂)

    软件测试从某种维度上分为黑盒测试和白盒测试 黑盒测试更多的是增啥改查 也就是功能测试 关于功能测试参考这里 增删改查测试场景 菜市场的大妈都能看懂 关于白盒测试的资料参考这里 白盒测试案例设计 我爷爷都能看懂 注意并不是说白盒测试一定就是要
  • 2021白盒测试常用工具介绍【建议收藏】

    白盒测试工具一般是针对代码进行测试 测试中发现的缺陷可以定位到代码级 根据测试工具原理的不同 又可以分为静态测试工具和动态测试工具 1 Jtest 是一个代码分析和动态类 组件测试工具 是一个集成的 易于使用和自动化的Java单元测试工具
  • 微信小程序和微信小游戏的区别

    本人小程序 小游戏 开发新手 看了几天文档 才大概搞明白微信小程序和微信小游戏的区别 首先大家口中所说的 小程序 这个概念有两个意思 一种是 小程序平台下的全部类型的项目 这样的话 就是不区分小程序项目和小游戏项目的概念 是大家一般口中所说
  • 静态分析领域中弱点、不足、缺陷、故障等概念之间的关系

    在CWE范畴内 讨论的核心内容是 弱点 及 不足 而在软件静态分析范畴内 研究的核心内容是 缺陷 及 故障 CWE已经越来越多的被静态分析用于重要参照标准 因此有必要将这几个关键概念之间的关系梳理清楚 弱点 Weakness 定义 CWE中
  • 递归和循环的区别

    针对需要重复地多次计算相同的问题 通常可以选择递归或者循环两种不同的方法 递归是在一个函数的内部调用这个函数本身 循环是通过设置计算的初始值及终止条件 在一个范围内重复计算 我们以计算1 2 3 n为例 我们可以采用递归和循环两种方式求出结
  • 常见的测试用例设计方法7---因果图法

    目录 一 因果图法的定义 二 因果图法的意义 三 因果图法的适用场合 四 因果图法的表示 五 因果图法的四种关系 六 因果图的基本约束 七 因果图的分析步骤及案例 一 因果图法的定义 因果图法是一种利用图解法分析输入的各种组合情况 从而设计
  • Golang 单元测试详尽指引

    文末有彩蛋 作者 yukkizhang 腾讯 CSIG 专项技术测试工程师 本篇文章站在测试的角度 旨在给行业平台乃至其他团队的开发同学 进行一定程度的单元测试指引 让其能够快速的明确单元测试的方式方法 本文主要从单元测试出发 对Golan
  • 【2】测试用例设计方法-场景法

    场景法 事件触发 基本流 备选流 画流程图 覆盖每条路径 场景法也是路径覆盖的方法 也是流程分析法 优先级根据两个来判断 1 使用率 2 重要性 一条路径可能有多个用例 用等价类边界值 每个数据就是一个用例
  • 功能测试基础之业务流程测试

    功能测试基础之业务流程测试 文章目录 功能测试基础之业务流程测试 前言 一 面向结构分析 定义 实例分析 二 面向过程分析 定义 面向过程分析过程与步骤 主事件流和备选事件流说明 实例分析 三 面向角色分析 定义 测试注意事项 怎样分析系统
  • 黑盒测试方法:边界值分析具体步骤及实例

    边界值分析法也是黑盒测试方法之一 强调测试边界条件 而非等量类划分 其过程是确定输入值的最大值和最小值 然后将测试点置于这些极端值以及它们之间 使用边界值分析法可以揭示程序在处于边界条件时的bug 并能够更有效地完成测试工作 以下是该方法的
  • 白盒测试(程序流程图)

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

    测试流程 整体流程如下 需求评审 功能需求 性能需求 接口需求 测试计划 测试用例 用例评审 测试环境搭建 平台 架构 web服务器 数据库 执行用例 缺陷记录 缺陷跟踪和回归测试 测试报告 测试计划 测试计划 描述了要进行的测试活动的范围
  • 如何编写测试用例

    文章目录 测试用例的内容 等价类 边界值分析法 流程分析法 判定表法 正交试验法 测试用例的内容 用例编号 用于唯一的识别用例 能够根据用例编号识别我们测试所属的产品 模块 测试阶段等 一般格式为 A B C D A 一般用来表示产品或者项

随机推荐

  • visual studio2019(C#/.NET)安装教程

    前言 好久没有跟新版本了 博主还用的2017 看到最新的2019功能还是很强大的 版本可能越高越好 所以博主写了一个详细的博客 希望可以帮助到大家 一 visual studio 2019 下载 1 下载地址 visual studio官方
  • 爬取药品监督情况数据

    首先打开国家药品监督局的相应网址 国家药品监督局的相应网址 找到某一家企业点击相应的许可证编号那一个栏目 查看相应的许可证情况 上面对应的内容为我们需要爬取的对应的数据 不确定对上述的网页进行访问的时候 我们能够得到对应的企业名称 许可证编
  • apollo5.5感知模块改进

    apollo5 5感知模块改进 最近一直在研究百度的apollo源码感知部分 下面整理一下近期的一些知识点 apollo5 5在感知部分做了些升级 以适应最新的apollo自动驾驶套件 主要的特征及改进 1 全新的数据Pipline服务以及
  • 射发射整改案例

    文章摘录 http www elecfans com emc emi 1244893 html 试验现象 系统在300K 200MHz辐射发射超标 2 诊断过程 1 使用近场探头置于模块显示屏时 1MHz以下频段超标 则低频电磁干扰来源于显
  • pandas 行、列的增删改查

    读取tips xlsx及预览内容 行的增删改查 增加行 直接赋值 可以只写一个值 也可以写列表 df loc 40 1 df loc 40 1 2 3 4 5 6 7 append方法 append 增加行的方法 设置ignore inde
  • 数据结构--图的遍历(广度优先遍历、深度优先遍历)

    目录 图的遍历 广度优先遍历 BFS 广度优先遍历的代码实现 编辑 广度优先遍历序列 编辑 遍历序列的可变性 编辑 BFS算法完整版 编辑 广度优先遍历复杂度分析 广度优先生成树 广度优先生成森林 回顾广度优先遍历 深度优先遍历 DFS 回
  • Opencv项目实战:00 专栏内容介绍

    目录 Opencv项目实战专栏介绍 01 文字检测OCR 02 角度探测器 03 扫描二维码 条形码 04 全景图片拼接 05 物体检测 06 文档扫描仪 07 人脸识别和考勤系统 08 Yolov3更高精度的检测物体 09 物体尺寸测量
  • react-dnd 拖拽能力教程

    前言 近几年来 低代码 零代码的热度在国内逐年递增 复杂度同力一样不会消失 也不会凭空产生 它总是从一个物体转移到另一个物体或一种形式转为另一种形式 用户在使用低零代码构建应用程序时 这些能力只是被平台研发人员提前编写完了 作为低零代码的基
  • Spark 任务调度机制

    1 Spark任务提交流程 Spark YARN Cluster模式下的任务提交流程 如下图所示 图YARN Cluster任务提交流程 下面的时序图清晰地说明了一个Spark应用程序从提交到运行的完整流程 图Spark任务提交时序图 提交
  • 不要一上来就学框架

    问 有两年多前端经验 但感觉自己对后端知之甚少 没有安全感 但是后端语言又多 不知道学哪一门性价比好一些 求教 语言不是重点 尤其是你已经会一门语言的情况下 后端编程最最基本的技术是这些 1 浏览器和服务器是怎么打交道的 重点就是HTTP协
  • Faster RCNN代码详解(四):关于anchor的前世今生

    在上一篇博客中介绍了数据处理的整体结构 Faster RCNN代码详解 三 数据处理的整体结构 这一篇博客介绍数据处理的细节 关于anchor的前世今生 代码在脚本的 mx rcnn rcnn io rpn py的assign anchor
  • React路由懒加载的实现

    React lazy 通过引入lazy Suspense两个方法实现路由懒加载 首先 我们需要在组件中引入lazy Suspense这两个方法 然后我们需要通过Suspense组件 包裹着注册路由 import React Componen
  • 有码变无码:Google Brain 把模糊人脸变成清晰画面

    转自 新浪科技 tech sina com cn it 2017 02 08 doc ifyaexzn9228446 shtml 谷歌旗下人工智能部门 谷歌大脑 设计了一款全新软件 可以把马赛克一样的源图片还原成清晰图片 简而言之 原本 打
  • mapper中resultMap生成器

    public class MybatisUtil 获取bean的属性 根据属性评价 resultMap 并将驼峰修改为 public static String getResultMap Class
  • Vue框架--Ruoyi解析(前端)

    路由router注册 router目录下的 index js 配合 permission js 是整套vue前端项目的权限判断核心 index js 里面的path 配置都是一些不会与权限挂钩的路由 例如 404 登录页面路径等 permi
  • JDK1.8 新特性之常用函数式接口

    目录 常用4种函数式接口 Supplier接口 Consumer接口 Function接口 Predicate 接口 常用的函数式接口主要在java util function包下 函数式接口是Lambda表达式使用的前提 而Lambda表
  • 2023年最详细零基础Python爬虫教程,入门学习分三个阶段

    爬虫Python入门好学吗 学爬虫需要具备一定的基础 有编程基础学Python爬虫更容易学 但要多看多练 有自己的逻辑想法 用Python达到自己的学习目的才算有价值 如果是入门学习了解 开始学习不难 但深入学习有难度 特别大项目 大部分爬
  • 基于Matlab的门控循环单元GRU数据预测

    基于Matlab的门控循环单元GRU数据预测 随着人工智能技术的迅猛发展 数据预测成为重要的挑战之一 门控循环单元GRU是一种新兴的神经网络结构 其在处理序列数据方面具有优异的性能 本文将介绍如何使用Matlab实现门控循环单元GRU进行数
  • Office2016简体中文专业版32/64

    仅供参考 链接 https pan baidu com s 1QklpJzxzWDuFnsXX 6z9SA 提取码 4kd0
  • 黑盒测试与白盒测试的定义与区别

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