精华内容
下载资源
问答
  • 黑盒测试和白盒测试
    2022-07-16 00:42:35

    黑盒测试:也称功能测试或数据驱动测试。

    方法:等价类划分法,边界值分析法,因果图法,场景法;正交实验设计法,判定表驱动分析法,错误推测法,功能图分析法

    优点:比较简单,不需要了解程序内部的代码及实现,与软件的内部实现无关,从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题,基于软件开发文档,也能知道软件实现了文档中的哪些功能,在做软件自动化测试时较为方便;

    缺点:不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%,自动化测试的复用性较低。

    白盒测试:也称结构测试或逻辑驱动测试,是针对被测单元内部是如何进行工作的测试

    方法:静态测试和动态测试。静态测试指不用运行程序的测试,包括代码检查,静态结构分析,代码质量度量,文档测试等。动态测试指需要执行代码,通过运行程序找到问题,包括功能确认与接口测试,覆盖率分析,性能分析,内存分析等

    优点:帮助软件测试人员增大代码的覆盖,提高代码的质量,发现代码中隐藏的问题。

    缺点:程序运行会有很多不同的路径,不可能测试所有的运行路径,测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求,系统庞大时,测试开销非常大。

    更多相关内容
  • 黑盒测试和白盒测试

    千次阅读 2022-01-05 13:20:41
    黑盒测试和白盒测试

    对于代码的单元测试,可以笼统的分为黑盒测试和白盒测试两部分。

    一、黑盒测试

    黑盒测试又称功能测试或者基于需求的测试。

    主要的测试方法包括边界值分析法、等价类划分法、错误推断法等

    边界值分析法:根据以往经验,大多数问题发生在数据的边界处。使用该方法需要,第一:确定测试单元输入信号的边界值;第二:用正等于边界值、略小于边界值、略大于边界值编写测试用例进行测试。

    等价类划分法:把输入信号的范围分为若干子集,在每个子集中选取有少量有代表性的数据编写测试用例

    错误推断法:根据经验分析,那些场景或者工况容易产生问题,针对性的设置用例进行测试

    黑盒测试过程中边界值分析法是必不可少的,也是查找问题能力最强的。其次可以辅助使用等价类划分法编写一些用例。最后使用错误推断法补充一些用例。

    二、白盒测试

    白盒测试又称结构测试或者逻辑驱动的测试。

    在白盒测试又分为静态分析和动态分析两类。

    静态分析是指不运行待测试的程序,通过代码检测、静态结构分析等通过工程师的逻辑思维去检查代码是否存在问题的方法。

    动态分析是指运行待测试程序进行测试的方法统称。

    白盒测试的目的:

    a 对程序模块的所有独立的执行路径至少测试一次

    b 对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试一次

    c 在循环的边界和运行界限内执行循环体

    d 测试内部数据结构的有效性等

    后两条不太理解,还请高手指点

    做单元测试时,覆盖度是衡量测试是否全面的,是否可靠的关键指标。覆盖度分为语句覆盖、判定覆盖、条件覆盖、判定\条件覆盖

    语句覆盖(Statement Coverage):设计测试用例,使被测程序中的每个语句至少被执行一次

    判定覆盖(Decision Coverage,DC):又叫分支覆盖,要求程序中的每个判断的每个可能结果都应该被执行一次,即每个分支的“真”和“假”至少被执行一次。

    条件覆盖(Condition Coverage,CC):程序中每个判定的每个条件的所有可能值至少执行一次

    改进判定\条件覆盖(Modified Conditon and Decision Coverage,MC/DC):要求设计足够的测试用例,判定的每个条件的所有可能必须出现至少一次,并且每个判定的每个条件要独立地影响判定结果。

    展开全文
  • 黑盒测试和白盒测试之间的区别软件测试任何工程产品(注意是任何工程产品)都可以使用以下两种方法之一进行测试。黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。白盒测试:已知...
  • 黑盒测试白盒测试

    2021-03-23 13:56:29
    单元测试的测试数据可以用两个基本的方法系统地构建。...这个技术也称为玻璃盒测试,白盒测试,结构测试,逻辑驱动测试以及面向路径测试。  规格说明测试的可行性:  考虑下面的例子。假定某个数据处理
  • 黑盒测试用例设计 决策表法 概述 在一个程序中,如果输入输出比较 多,输入之间输出之间相互制约 的条件比较多,在这种情况下使用 决策表更合适,它可以清楚地表达 它们之间的各种复杂关系 决策表法是黑盒测试方法中最为...
  • 黑盒测试和白盒测试区别

    千次阅读 2020-10-19 16:24:16
    一、黑盒测试和白盒测试 黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。 白盒测试:已知产品的内部工作过程,可以进行测试证明每种内部操作是否符合设计规格要求,所有内部...

    一、黑盒测试和白盒测试

     黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。

    白盒测试:已知产品的内部工作过程,可以进行测试证明每种内部操作是否符合设计规格要求,所有内部成分是否经过检查。

     1. 第一认识:

      黑盒测试

    测试特点:测试功能;

    测试依据:需求规格说明书

    方法举例:等价类划分、边界值测试

    优点:能站在用户的立场上进行测试

    缺点:不能测试程序内部特定部位,如程序有误,则无法发现。

    白盒测试

    测试特点:测试程序接口与结构

    测试依据:软件程序

    方法举例:逻辑覆盖

    优点:对程序内部特定部位进行覆盖测试。

    缺点:无法检验程序外部特性。

     2.第二认识:

      黑盒测试把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,针对“软件界面”和”软件功能“进行测试,只检查功能是否符合需求规格说明书能正常使用。因此黑盒测试又叫功能测试或数据驱动测试。

      白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看作一个打开的盒子,他允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。因此白盒测试又称为”结构测试“或”逻辑驱动测试“。白盒测试是按照程序内部的结构来测试程序,通过测试检验产品内部动作是否按照设计规格说明书的要求正常进行,检验程序中的每条通道是否都按照规定正常工作。

      3.第三认识:

      黑盒测试主要是为了发现以下错误:

     (1)是否有不正确或者遗漏了的功能;

     (2)在接口上,输入能否正确的接受?能否输出正确的结果?

     (3)是否有数据结构错误或外部信息(例如数据库文件)访问错误?

     (4)性能上是否能够满足要求?

     (5)是否有初始化或终止性错误?

    黑盒的测试用例技术设计有三种:  边界值分析、等价类划分、错误推测法。

     白盒测试主要是想对程序模块进行以下检查:

     (1)对程序模块的所有独立的执行路径至少测试一遍;

     (2)对所有的逻辑判定,取”真“与”假“的两种情况都能至少测一遍;

     (3)在循环的边界和运行的界限内执行循环体;

     (4)测试内部数据结构的有效性,等等;

     (5)静态白盒测试  :即代码审查,正式审查和检验设计和程序代码;

     (6)动态白盒测试 利用查看代码功能和实现方式得到的信息来设计和执行测试,也叫结构测试;

     白盒的测试用例技术包括逻辑覆盖和基本路径测试。

      逻辑覆盖:是以程序内在逻辑结构为基础的测试用例设计技术,这一方法要求测试人员对程序的逻辑结构有清楚的了解。

     基本路径测试:在程序控制流程图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例。

    展开全文
  • 白盒测试和黑盒测试是软件测试的两种基本方法。 白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清楚盒子...
  • xauat软件质量保证与测试实验报告,包含了整体的黑盒测试白盒测试,系统测试三种,是三分独立的报告,需要的请下载。需要doc请csdn联系我
  • 黑盒测试和白盒测试的基本原理/区别是什么?

    首先我们来看,白盒测试跟黑盒测试,对于这两个概念,我在网上也经常看到有人提出类似的问题,那我今天就来写一篇关于两者之间的原理与区别VS。

    因为有很多朋友是刚刚接触软件测试行业的,多多少少都会有听过白盒测试、黑盒测试。

    在公司里面,或者经常听到有人说你是做黑盒测试还是做白盒测试?或者白盒测试包括哪一些范畴呢?黑盒测试又包括哪一些范畴。

    文章首发于公众号:程序员阿沐

    我们简单来介绍一下这两个概念

    黑盒测试
    黑盒测试:也称功能测试,测试中把被测的软件当成一个黑盒子,

    内部结构是什么,只关心软件的输入数据与输出结果。

    主要测试依据是需求文档、设计文档、用户手册

    1:业务能力

    2∶测试策略(功能测试、u测试,兼容性测试)

    3:设计用例–逻辑思维

    在这里插入图片描述

    这个图呢,我们就可以把整个程序,当做一个黑盒子,那么它的特点是什么呢?就是看不到程序里面实现的代码跟逻辑。其实这个就跟用户去使用这个软件是一样的道理。

    比如说你是一个用户,我要去使用这个百度,那么我看到的只是百度的这么一个首页。

    在这里插入图片描述

    页面会有很多的按钮、输入等等之类的一些链接信息。但是我根本就无法通过这个表面展示的信息,去看到它内部代码的一个实现。那么像对这个图标进行点击,

    在这里插入图片描述
    在这里插入图片描述

    在这个搜索框进行输入搜索,功能是否正常实现效果。

    那么像这一类测试,我们就把它就做黑盒测试。

    1.我不需要看到里面的这个代码实现是什么样子的,我也不管你里面是用Python实现的用Java实现的还是用其他编程语言实现的,我只要管我的功能有没有实现,就OK了。

    比如说,我搜索了程序员阿沐,我点击百度一下,我只要得到的结果中间是有关于程序员阿沐这样子的词条结果出现,那么我就认为这个功能是正确的。

    在这里插入图片描述

    因此对于黑盒测试来说的话呢,它也是入门级别的一种测试,也是最为简单的一种测试。因为它只需要根据咱们的测试文档、或者设计文档、或者用户手册等等这一系列的参考数据,参考文档来对这个软件功能进行验证就OK了。

    验证什么呢?

    1.验证它的功能业务有没有正确的实现

    2.验证它的UI是不是显示,是否美观正确,包括它的兼容性,等等之类的

    3.设计用例–逻辑思维

    只要这些内容实现了,符合需求文档、设计文档、用户手册。那么我们就认为这个功能没有问题,这个业务就是可以正常跑通的。所以这个就是对于咱们测试来说最为简单的一种方式,也是最快速入门的一种方式。

    那么真真正正在公司中间,我们第一个去做的也是这个黑盒测试中间的功能测试,其实黑盒测试它是一个很大的范畴,黑盒测试它并不仅仅只包括功能测试,它也包括UI测试,兼容性测试,还包括什么?

    其实我们常说的接口测试也是属于黑盒测试,或者功能测试的一个范畴。

    因为像接口的话,接口这个东西也很简单,我就只需要管我在接口左边传入数据之后,我要得到什么样的结果就OK了。

    在这里插入图片描述

    也就是说我不去管你在这个接口内部中间是用的什么样的协议,用的什么样的处理机制来进行处理的。我就只关心在这个接口的左边,就是我在发送之前我输入一些请求参数,输入完成后我要得到的一个结果,比如说是登录成功或者说是登录失败,或者说是提示什么样的信息。

    所以在一定程度上,我们也会把接口测试划分到黑盒测试的范畴里面来。

    那为什么我们又那么的重视接口测试,而且单独把它从这一块单独拎出来去学习,包括在企业中间呢,你去面试的时候。我相信十个公司去面试至少有九个公司会问到会不会接口测试,会不会接口工具,会不会抓包。

    那是因为接口它可以在咱们这一个功能测试之前,就进行。就在咱们的前一个阶段就开始执行,并且的话呢,它的这一个集成的程度以及管理的程度是相比于咱们这个功能跟UI方面来说,是要方便很多的。

    因为它有一个非常大的特点!就是只需要把接口集成了,调试好了之后,基本上它的接口就不会动了,但是想咱们UI前端的话呢,有时候随着用户的体验感不好,或者说友好性不好等等之类的,前端的变化会非常的多。

    因此在企业里面它会原来越重视这个接口,包括在接口的这一个阶段呢它可以发现你在功能阶段或者说在UI测试这个阶段很多的一些问题。

    通用的问题,既然我能够在前一个阶段能够发现,那我为什么不去做呢,因为在咱们测试的过程中间越早发现这个Bug的话呢,它修复的这个成本就越低。然后你的这个软件的稳定性就会越好。我的这个质量就会得到一个更加好的保障!

    这个就是接口在测试的一个比重,所以大家可以了解一下,所以说我们在这一块我们去做功能测试,接口测试基本上是你现在出去面试的时候必备问到的两个相关的这一个技能。(公众号程序员阿沐主页点击领取资料,领取最新大厂面试题)

    那么我们讲到黑盒的话呢,我们又不得不讲一下我们的

    白盒测试
    因为大家一开始讲到黑盒就会跟白盒来进行比较,那么白盒就是完全跟黑盒相反的。

    白盒测试:关心软件内部设计和程序实现,对内部实现逻辑进行测试的过程。

    主要测试依据是设计文档,伪代码,代码。–》开发

    测试开发(搭建自动化框架,开发自动化工具)–》自动化测试–》框架

    技能要求:看懂内部逻辑(语言: java,python, php…)
    在这里插入图片描述

    那么白盒就是我就直接可以看到里面的代码逻辑,然后根据里面的代码逻辑然后去选取对应的数据,来对它进行一个测试,去检查它的结果是不是正确。因为像这种白盒测试的话呢,我们又把它叫做什么呢?又把它叫做代码测试,或者叫做单元测试。

    像这一种测试的话呢,可想而知,它必须要的一个要求是什么?必须要看懂里面的内部逻辑,如果说你看不懂里面的一个内部逻辑,你怎么去选数据呢。或者说你看不懂里面的内部逻辑,你选了这个数据,你也不知道它对应得出的结果应该是什么。

    如果我在中间给你写一个高阶的函数,以你的能力没有达到这个层次,然后我x去输入一个1,那么我y得出的是多少,我自己都不知道,那么我怎么样去测试呢,我怎么去保证我这个测试的结果是正确的呢。

    因此在这一块,做白盒测试第一个要求就是你要懂内部逻辑,所谓的内部逻辑就是你要看懂开发写的这些代码,又回到我们百度的这个案例上来。

    在这里插入图片描述

    我们单元测试来说,我们看到的不再是百度首页这样子的一个东西,而是我看到的是这样子的一个Html的代码,那么在这样一个代码里面的,要去看它是否正确,div是什么意思,为什么要放到这里,为什么要这样子来写,这就是我们需要去学会一门编程语言非常重要的一个点。

    因为大家都知道,我们的编程语言有非常的多,比如说像Java、PHP、Python等等之类的,那么你这个程序是用什么语言写的,那你就必须要看懂这么语言。

    因此来说白盒测试工程师他的要求非常高。并不是仅仅说你掌握一门编程语言,你掌握一个框架就OK了,并不是这样子的。

    白盒测试因为他的要求比较高,而且相关的技术人员也是挺难找的,所以说一般在公司中间他白盒测试很少让测试去做,一般开发人员做单元测试,因为开发人员这个语言,内部的逻辑就是本人写出来的,所以他对这个语言是非常熟悉的。

    然后利用内部开发人员交叉的测试,从而来测它内部的代码逻辑是不是正确。

    白盒测试参考的一些文档就是,设计文档、伪代码、代码,这些东西。

    当然有些小伙伴就说我的目标就是要成为一个白盒测试工程师,那么我就建议你把这个目标改一改,因为像现在的话呢,大家都知道我们这个人工智能,我们的这一个Python,云储存,这些都非常的火。

    所以说像在这一块,我们要看到时代的一个发展,包括IT他往哪个方面重点发展。现在的话,你无论是走自动化还是走性能方向,或者走安全方向,其实在需求的程度上都比白盒测试要多一些。

    当然白盒测试也有他的一个需求市场,不是说没有,相对比较少。

    知识面拓展:

    黑盒测试产生的问题
    从理论上讲,黑盒测试只有采用穷举输入测试,把所有可能的输入都作为测试情况考虑,才能查出所有的错误。实际上测试情况是无穷多的,完全测试是不可能的。

    如何解决?

    必须将黑盒测试行为加以分类

    1、节约测试实施的时间和资源

    2、避免盲目测试、提高测试效率

    3、使测试的实施重点突出、目的更明确

    加油吧,测试人!路就在脚下,成功就在明天!

    未来的你肯定会感谢现在拼命的自己!

    愿你我相遇,皆有所获! 欢迎关注微信公众号:程序员阿沐

    1.免费领取一份216页软件测试工程师面试宝典文档资料。

    2.软件测试学习路线以及相对应的视频学习教程免费分享!

    文章首发于公众号:程序员阿沐

    转载请注明出处!

    展开全文
  • 一、黑盒测试 1、什么是黑盒测试? 顾名思义,把测试对象看成一个黑盒子,完全不考虑程序内部结构处理过程,通过软件的外部表现来发现缺陷。 2、黑盒测试用例设计方法 等价类划分;边界值分析;因果图法;正交...
  • 黑盒测试和白盒测试优点和缺点

    千次阅读 2020-12-30 17:52:31
    黑盒测试的优点有:比较简单,不需要了解程序内部的代码及实现;与软件的内部实现无关; 从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;基于软件开发文档,所以也能知道软件实现了文档中的...
  • 白盒测试的缺点有程序运行会有很多...黑盒测试的缺点有不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;白盒测试的优点有帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。...
  • 黑盒测试和白盒测试定义及区别

    万次阅读 多人点赞 2020-07-05 11:50:26
    简单了解一下黑盒测试和白盒测试 一、定义 1.1黑盒测试 黑盒测试又称为功能测试,主要检测软件的每一个功能是否能够正常使用。在测试过程中,将程序看成不能打开的黑盒子,不考虑程序内部结构和特性的基础上通过程序...
  • 黑盒测试和白盒测试的区别

    万次阅读 多人点赞 2018-09-21 11:41:40
     白盒测试:是一种测试用例设计方法,在这里盒子指的是被测试的软件,白盒,顾名思义即盒子是可视的,你可以清楚盒子内部的东西以及里面是如何运作的,因此白盒测试需要你对系统内部的结构工作原理有一个清楚的...
  • 黑盒测试 白盒测试 测试侧重方面 对程序外部行为的测试 对程序内部代码的测试 是否知晓内部实现 否 是 测试者 ...
  • 黑盒测试白盒测试,灰盒测试
  • 实验1 黑盒测试 一实验目的与要求 1掌握等价类测试方法的原理步骤及应用 2掌握边界值分析法的原理步骤及应用 3掌握决策表测试方法的原理步骤及应用 二实验设备 1电脑PC 2office办公软件 三实验原理 一等价类测试法 1...
  • 软件测试是为了发现程序中的错误而执行程序的过程,常用黑盒功能测试和白盒结构测试法进行测试,那黑盒功能测试和白盒结构测试法到底是什么样的测试方法?它们有哪些优劣势呢?所谓黑盒功能测试法,就是把要测试...
  • 黑盒测试和白盒测试,二者最大的区别应该就是测试时关注的对象不一样。 黑盒测试:针对程序展现给用户的功能,白盒测试:针对的是程序的代码逻辑。简单的说,就是前者测试最终展示功能,后者测试后台程序。 黑盒...
  • 什么是黑盒测试和白盒测试

    千次阅读 2019-09-17 09:47:18
    什么是黑盒测试和白盒测试? 任何工程产品(注意是任何工程产品)都可以使用以下两种方法之一进行测试。 黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。白盒测试:已知产品的...
  • 什么是黑盒测试和白盒测试的区别.pdf
  • 软件测试按照测试技术划分可以有:黑盒测试白盒测试,灰盒测试 黑盒测试又叫功能测试 1.软件黑色盒子,里边的实现,看不见代码 2.输入,输出结果---功能测试的方法 这是因为在黑盒测试中主要关注被测软件的...
  • 黑盒测试的优点有: 比较简单,不需要了解程序内部的代码及实现; 与软件的内部实现无关; 从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题; 基于软件开发文档,所以也能知道软件实现了文档...
  • 大家好,我是小七,在前面的测试笔记中我们具体聊过白盒测试黑盒测试,这些天跟我的一些同事也有聊到类似的一些概念,今天就跟大家分享下我对这两种测试的理解。 黑盒测试 它是根据软件需求规范创建测试场景/...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 30,225
精华内容 12,090
关键字:

黑盒测试和白盒测试