精华内容
下载资源
问答
  • 1.黑盒测试 黑盒测试:也可叫功能测试,是一种从用户角度出发的测试。把被测程序当作一个黑盒子,测试人员完全不用考虑盒子里面的逻辑结构和具体运作,只依据...灰盒测试:是介于白盒测试与黑盒测试之间的一种测试,

    1.黑盒测试
    黑盒测试:也可叫功能测试,是一种从用户角度出发的测试。把被测程序当作一个黑盒子,测试人员完全不用考虑盒子里面的逻辑结构和具体运作,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。主要的测试方法有等价划分类,错误推测法等。

    2.白盒测试
    白盒测试也称为结构测试。它根据程序的控制结构设计测试用例,测试人员会利用程序内部的逻辑结构及有关信息,通过在不同点检查程序状态,检验程序中的每条通路是否都能按预定要求进行正确工作。

    3.灰盒测试
    灰盒测试:是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。灰盒测试不像白盒那样详细、完整,但又比黑盒测试更关注程序的内部逻辑。

    4.三者的区别

    1. 从测试目标和依据来说:黑盒面对的是产品设计,白盒针对的是程序功能的实现,灰盒针对兼而有之,既要考虑产品设计要求,又考虑到功能实现的效果
    2. 从实现者而言:黑盒在意的是客户的角度,白盒测试针对的研发人员。
    3. 从测试模块颗粒度而言:白盒在意的是代码实现层面,而灰盒更加侧重模块之间,而黑盒更在于用户层面
    展开全文
  • 黑盒测试也称功能测试、数据驱动测试或基于规格说明书的测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口...

    1. 黑盒测试

    黑盒测试也称功能测试、数据驱动测试或基于规格说明书的测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
    在这里插入图片描述

    黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。
    在这里插入图片描述

    作用

    黑盒测试注重于测试软件的功能需求,主要试图发现下列几类错误。

    • 功能不正确或遗漏;
    • 界面错误;
    • 输入和输出错误;
    • 数据库访问错误;
    • 性能错误;
    • 初始化和终止错误等。

    黑盒测试的主要测试方法

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

    流程

    1. 测试计划

    首先,根据用户需求报告中关于功能要求和性能指标的规格说明书,定义相应的测试需求报告,即制订黑盒测试的最高标准,以后所有的测试工作都将围绕着测试需求来进行,符合测试需求的应用程序即是合格的,反之即是不合格的;同时,还要适当选择测试内容,合理安排测试人员、测试时间及测试资源等。

    1. 测试设计与开发

    将测试计划阶段制订的测试需求分解、细化为若干个可执行的测试过程,并为每个测试过程选择适当的测试用例(测试用例选择的好坏将直接影响到测试结果的有效性)。

    1. 测试执行

    执行测试开发阶段建立的自动测试过程,并对所发现的缺陷进行跟踪管理。测试执行一般由单元测试、组合测试、集成测试、系统联调及回归测试等步骤组成,测试人员应本着科学负责的态度,一步一个脚印地进行测试。

    1. 测试评估

    结合量化的测试覆盖域及缺陷跟踪报告,对于应用软件的质量和开发团队的工作进度及工作效率进行综合评价。

    优点

    1. 对于较大的代码单元来说,黑盒测试比白盒测试效率较高。
    2. 测试人员不需要了解细节,包括特定的编程语言。
    3. 有助于暴露与任务规格不一致或者有歧义的地方。
    4. 测试用例可以在需求规格完成之后马上执行。
    5. 从用户的角度zd测试,很容易被理解和接受。

    缺点

    1. 不可能覆盖所有的代码, 覆盖率较低,大概只能达到总代码量的30%
    2. 如果测试人员,不被告知开发人员已经执行过的用例,在测试数据上会存在不必要的重复。
    3. 很多测试路径没有测试到。
    4. 不能直接对特定程序权段进行测试,改程序段可能隐藏更多错误。
    5. 大部分和研究相关的测试都是直接针对白盒测试的。
    6. 自动化测试的复用性较低。

    工具选择

    私用的话去找一些开源的工具就好,像OWASP ZAP、Arachni、Wfuzz、Nikto这几个都是免费开源的。
    更多介绍:
    https://www.cnblogs.com/parachuteInk/p/4419734.html

    2.白盒测试

    白盒测试又称结构测试或逻辑驱动测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西以及里面是如何运作的。"白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。"白盒"法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。
    在这里插入图片描述
    在这里插入图片描述
    采用什么方法对软件进行测试呢?常用的软件测试方法有两大类:静态测试方法和动态测试方法。其中软件的静态测试不要求在计算机上实际执行所测程序,主要以一些人工的模拟技术对软件进行分析和测试;而软件的动态测试是通过输入一组预先按照一定的测试准则构造的实例数据来动态运行程序,而达到发现程序错误的过程。在动态分析技术中,最重要的技术是路径和分支测试。下面要介绍的六种覆盖测试方法属于动态分析方法。

    白盒测试的主要测试方法

    白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、路径覆盖和程序变异。
    白盒测试法的覆盖标准有逻辑覆盖、循环覆盖和基本路径测试。其中逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。

    六种覆盖标准发现错误的能力呈由弱到强的变化:

    1. 语句覆盖每条语句至少执行一次。
    2. 判定覆盖每个判定的每个分支至少执行一次。
    3. 条件覆盖每个判定的每个条件应取到各种可能的值。
    4. 判定/条件覆盖同时满足判定覆盖条件覆盖。
    5. 条件组合覆盖每个判定中各条件的每一种组合至少出现一次。
    6. 路径覆盖使程序中每一条可能的路径至少执行一次。

    要求

    1. 保证一个模块中的所有独立路径至少被使用一次。
    2. 对所有逻辑值均需测试 true 和 false。
    3. 在上下边界及可操作范围内运行所有循环。
    4. 检查内部数据结构以确保其有效性。

    目的

    通过检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖测试;在程序不同地方设立检查点,检查程序的状态,以确定实际运行状态与预期状态是否一致。
    特点
    依据软件设计说明书进行测试、对程序内部细节的严密检验、针对特定条件设计测试用例、对软件的逻辑路径进行覆盖测试。

    实施步骤

    1. 测试计划阶段:根据需求说明书,制定测试进度。
    2. 测试设计阶段:依据程序设计说明书,按照一定规范化的方法进行软件结构划分和设计测试用例。
    3. 测试执行阶段:输入测试用例,得到测试结果。
    4. 测试总结阶段:对比测试的结果和代码的预期结果,分析错误原因,找到并解决错误。

    优点

    1. 帮助软件测试人员增大代码的覆盖了吧,提高代码的质量,发现代码中隐藏的问题;

    缺点

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

    局限

    但即使每条路径都测试了仍然可能有错误。可能出现的情况如下:
    穷举路径测试决不能查出程序违反了设计规范,即程序本身是个错误的程序。
    穷举路径测试不可能查出程序中因遗漏路径而出错。
    穷举路径测试可能发现不了一些与数据相关的错误。

    工具挑选

    白盒测试常用工具介绍:
    https://blog.csdn.net/yrryyff/article/details/83715990

    3.灰盒测试

    灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。灰盒测试不像白盒那样详细、完整,但又比黑盒测试更关注程序的内部逻辑,常常是通过一些表征性的现象、事件、标志来判断内部的运行状态。
    在这里插入图片描述

    定义

    灰盒测试由方法和工具组成,这些方法和工具取材于应用程序的内部知识和与之交互的环境,能够用于黑盒测试以增强测试效率、错误发现和错误分析的效率。

    学术含义

    灰盒(Gray Box)是一种程序或系统上的工作过程被局部认知的装置。
    灰盒测试,也称作灰盒分析,是基于对程序内部细节有限认知上的软件调试方法。测试者可能知道系统组件之间是如何互相作用的,但缺乏对内部程序功能和运作的详细了解。对于内部过程,灰盒测试把程序看作一个必须从外面进行分析的黑盒。
    灰盒测试通常与web服务应用一起使用,因为尽管应用程序复杂多变,并不断发展进步,因特网仍可以提供相对稳定的接口。由于不需要测试者接触源代码,因此灰盒测试不存在侵略性和偏见。开发者和测试者间有明显的区别,人事冲突的风险减到最小。然而,灰盒测试相对白盒测试更加难以发现并解决潜在问题,尤其在一个单一的应用中,白盒测试的内部细节可以完全掌握。 灰盒测试结合了白盒测试和黑盒测试的要素。它考虑了用户端、特定的系统知识和操作环境。它在系统组件的协同性环境中评价应用软件的设计。灰盒测试由方法和工具组成,这些方法和工具取材于应用程序的内部知识和与之交互的环境,能够用于黑盒测试以增强测试效率、错误发现和错误分析的效率。灰盒测试涉及输入和输出,但使用关于代码和程序操作等通常在测试人员视野之外的信息设计测试。

    目的任务

    软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。软件测试是为了发现错误而执行程序的过程。软件测试在软件生存期中横跨两个阶段,通常在编写出每一个模块之后就对它做必要的测试(称为单元测试)。编码和单元测试属于软件生存期中的同一个阶段。在结束这个阶段后对软件系统还要进行各种综合测试,这是软件生存期的另一个独立阶段,即测试阶段。

    目的

    第一是确认软件的质量,其一方面是确认软件做了你所期望的事情(Do the right thing),另一方面是确认软件以正确的方式来做了这个事件(Do it right)。
    第二是提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。
    第三软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。如果一个软件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。因此软件测试的第三个目的是保证整个软件开发过程是高质量的。

    测试任务

    1. 寻找Bug;
    2. 避免软件开发过程中的缺陷;
    3. 衡量软件的品质;
    4. 关注用户的需求。

    目标

    1. 确保软件的质量;
    2. 提高软件质量功能。

    感谢您的浏览!

    转载于:https://blog.csdn.net/zhang150114/java/article/details/90694717

    展开全文
  • 一、黑盒测试、灰盒测试白盒测试概念 黑盒测试:黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检验每个功能都是否能够正常使用。 白盒测试:白盒测试也称结构测试或逻辑驱动测试...

    在这里插入图片描述

    一、黑盒测试、灰盒测试、白盒测试概念

    黑盒测试:黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检验每个功能都是否能够正常使用。
    白盒测试:白盒测试也称结构测试或逻辑驱动测试,是一种测试用例设计方法,它从程序的控制结构导出测试用例。(测试用例由测试输入数据以及与之对应的输出结果组成)允许测试人员对程序内部逻辑结构及有关信息来设计和选择测试用例,对程序的逻辑路径进行测试。基于一个应用代码的内部逻辑知识,测试是基于覆盖全部代码、分支、路径、条件。
    灰盒测试:它是一种基于黑盒测试和白盒测试之间的测试方法,是业务流程基础上关注系统模块之间如何交互运作的测试方法。它既可保证黑盒的关注点又可掌控白盒的内部结构,但不会去对内部程序功能和运作做详细了解。

    二、黑盒测试、灰盒测试、白盒测试区别

    黑盒和灰盒的区别:
      如果某软件包含多个模块,当使用黑盒测试时,你只要关心整个软件系统的边界,无需关心软件系统内部各个模块之间如何协作。而如果使用灰盒测试,则需要关心模块与模块之间的交互。
    白盒和灰盒的区别:
      在灰盒测试中,你无需关心模块内部的实现细节,对于软件系统的内部模块,灰盒测试依然把它当成一个黑盒来看待。而白盒测试还需要再深入地了解内部模块的实现细节和各个分支。

    三、黑盒测试、白盒测试详细功能描述

    黑盒测试详细功能描述请看这篇
    白盒测试详细功能描述请看这篇

    展开全文
  • 白盒测试的方法概念 语句覆盖 主要特点:语句覆盖是最起码的结构覆盖要求,语句覆盖要求设计足够多的测试用例,使得程序中每条语句至少被执行一次。 判定覆盖 主要特点:判定覆盖又称为分支覆盖,它要求设计足够多的...

    白盒测试的方法概念

    语句覆盖
    主要特点:语句覆盖是最起码的结构覆盖要求,语句覆盖要求设计足够多的测试用例,使得程序中每条语句至少被执行一次。
    判定覆盖
    主要特点:判定覆盖又称为分支覆盖,它要求设计足够多的测试用例,使得程序中每个判定至少有一次为真值,有一次为假值,即:程序中的每个分支至少执行一次。每个判断的取真、取假至少执行一次。
    条件覆盖
    主要特点:条件覆盖要求设计足够多的测试用例,使得判定中的每个条件获得各种可能的结果,即每个条件至少有一次为真值,有一次为假值。
    判定/条件覆盖
    主要特点:设计足够多的测试用例,使得判定中每个条件的所有可能结果至少出现一次,每个判定本身所有可能结果也至少出现一次。
    组合覆盖
    主要特点:要求设计足够多的测试用例,使得每个判定中条件结果的所有可能组合至少出现一次。
    路径覆盖
    主要特点:设计足够的测试用例,覆盖程序中所有可能的路径。

    白盒、黑盒和灰盒测试的区别

    灰盒测试中,测试员可能知道系统组件之间是如何互相作用的,但缺乏对内部程序功能和运作的详细了解。对于内部过程,灰盒测试把程序看作一个必须从外面进行分析的黑盒。因此,假设测试对象有很多模块组成,

    1. 灰盒测试与黑盒测试相比,更关心模块与模块之间的交互
    2. 灰盒测试与白盒测试相比,灰盒测试无需关心内部模块实现细节,而白盒测试仍需更深入了解内部模块细节。
    展开全文
  •  黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者...
  • 白盒测试,黑盒测试与灰盒测试区别 白箱测试或白盒测试(White-box testing 或glass-box testing)是通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法,溢出,...
  • 黑盒测试: 不关心软件内部的逻辑,是关心输入和输出是否达到预期效果,相当把测试的软件看成一个只有输入和输出的黑盒子。...灰盒测试:介于白盒黑盒测试之间,既关心输入和输出,又关心程序内部结构
  • 黑盒测试、白盒测试、灰盒测试

    万次阅读 多人点赞 2019-05-30 11:55:41
    1. 黑盒测试 黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能...
  • 黑盒测试:已知产品的功能设计规格...灰盒测试:介于白盒黑盒之间的测试。 1、黑盒测试 黑盒,顾名思义,就是把所有东西装到一个盒子里,看不到内部逻辑,只能通过外部的可见的功能模块,对软件进行测试。 比如
  • 黑盒测试 黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能...
  • 黑盒测试黑盒测试也称功能测试,它是在已知产品所应具有的功能上,通过测试来检测是否每个功能是否能够按照需求规格说明书的规定正常使用。我们通过程序的接口进行测试,看程序能否适当的接收输入数据而产生正确的...
  • 黑盒测试白盒测试区别

    万次阅读 多人点赞 2018-09-21 11:41:40
     软件测试方法:白盒测试、黑盒测试、灰盒测试、静态测试、动态测试 2. 白盒测试:是一种测试用例设计方法,在这里盒子指的是被测试的软件,白盒,顾名思义即盒子是可视的,你可以清楚盒子内部的东西以及里面...
  • 从被测试对象的角度分类,测试方法可以分为黑盒测试、白盒测试、灰盒测试三种,这也是我们最常看到的分类方法。 任何一个程序在测试时都由这几部分组成:输入、程序的处理过程和输出三部分,如图1-1 所示。黑盒测试...
  • 黑盒白盒灰盒测试区别

    千次阅读 2015-09-19 21:35:03
     黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者...
  • 什么是黑盒测试白盒测试? 任何工程产品(注意是任何工程产品)都可以使用以下两种方法之一进行测试黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。 白盒测试:已知...
  • 黑盒白盒灰盒测试

    千次阅读 2019-03-25 08:47:44
    黑盒测试:软件的黑盒测试意味着测试要在软件的...灰盒测试:灰箱测试就像黑箱测试一样是通过用户界面测试,但是测试人员已经有所了解该软件或某种软件功能的源代码程序具体是怎样设计的。甚至于还读过部分源代码。 因...
  • 软件测试按照测试技术划分可以有:黑盒测试,白盒测试,灰盒测试 黑盒测试又叫功能测试 1.软件黑色盒子,里边的实现,看不见代码 2.输入,输出结果—功能测试的方法 这是因为在黑盒测试中主要关注被测软件的功能实现...
  • 初五,迎财神。天气很好,喜欢坐在桌前写东西,想念TT,的这种感觉,仿佛TT就在一边...黑客,灰盒白盒,来自于对软件功能性能等方面的测试。我们这里重点看在网络安全上的理解,也就是渗透测试中常会提到的三种测试
  • 从被测试对象的角度分类,测试方法可以分为黑盒测试、白盒测试、灰盒测试三种,这也是我们最常看到的分类方法。 任何一个程序在测试时都由这几部分组成:输入、程序的处理过程和输出三部分,如图1-1 所示。黑盒测试...
  • 黑盒测试 黑盒测试又名为功能测试,主要目的是发现软件设计的需求或者是软件设计规格说明书中的错误缺陷。软件的开发具有特定性,一般都是为了某种...黑盒测试白盒测试相反,软件设计程序被看做一个打不开的盒子,...
  • 黑盒测试 白盒测试 灰盒测试 目标 :确保软件的质量、提高软件质量 一、黑盒测试 黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序...
  • 软件的黑盒测试意味着测试要在软件的接口处进行。
  • 1.软件测试方法:白盒测试、黑盒测试、灰盒测试、静态测试、动态测试 2.白盒测试:是一种测试用例设计方法,在这里盒子指的是被测试的软件,白盒,顾名思义即盒子是可视的,你可以清楚盒子内部的东西以及里面是如何...
  • 网络安全渗透测试严格定义是一种针对目标网络进行安全检测评估。 通常这种测试由专业的网络安全渗透测试专家完成,... 根据事先对目标信息的了解程度,网络安全渗透测试方法有黑盒测试,白盒测试和灰盒测试三种。 ...
  • 内容目录(原文见公众号python宝)一、黑盒测试二、白盒测试三、灰盒测试一、黑盒测试黑盒测试又称为功能测试、数据驱动测试,它是通过测试来检测每个功能是否能正常使用。把程...
  • 软件测试是一种用来促进... 对于软件测试分类,最被大家熟悉的是根据软件结构与算法的角度来分类的:白盒测试、黑盒测试与灰盒测试。  白盒测试又被称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试,是对...
  • 黑盒测试关注程序的功能是否正确...灰盒测试是介于白盒测试与黑盒测试之间的一种测试。 单元测试(Unit Testing)是对软件基本组成单元进行的测试,如函数或是一个类的方法。这里的单元,就是软件设计的最小单位。 ...
  • 又多了解了一下测试知识,加油。
  • 黑盒测试白盒测试用例设计

    千次阅读 2020-08-22 15:00:28
    黑盒测试、白盒测试和灰盒测试 **黑盒测试:**已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。通俗来讲就是只关心输入和输出、不关系软件内部代码逻辑实现。 白盒测试:考虑软件的内部代码...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,091
精华内容 2,036
关键字:

白盒黑盒灰盒测试区别