白盒测试 和 黑盒测试

       白盒测试:在测试类书籍中,白盒测试有多种称法,如玻璃盒测试,透明盒测试,开放盒测试,结构化测试,基于代码的测试,逻辑驱动测试等。白盒测试是一种测试用例设计方法,在这里盒子指的是被测试的软件,白盒,顾名思义即盒子是可视的,你可以清楚盒子内部的东西以及里面是如何运作的,因此白盒测试需要你对系统内部的结构和工作原理有一个清楚的了解,并且基于这个知识来设计你的用例。

       黑盒测试:又叫功能测试,这是因为在黑盒测试中,主要关注于被测软件的功能实现,而不是内部逻辑。

黑盒测试发现以下类型的错误:

1)功能错误或遗漏

2)界面错误

3)数据结构或外部数据库访问错误

4)性能错误

5)初始化和终止错误。

        灰盒测试:介于白盒和灰盒之间的测试。最常见的灰盒测试时集成测试。

(1)白盒测试和黑盒测试的优缺点比较:

比较 优点 缺点
白盒测试
迫使测试人员仔细的思考软件的实现。

可以检测代码中的每条分支和路径。

揭示隐藏在代码中的错误。

对代码的测试比较彻底。

最优化。


昂贵。

无法测试代码中遗漏的路径和数据敏感性错误。

不验证规格的正确性。

黑盒测试
测试效率高。

测试人员不需要了解详细的细节,包括特定的编程语言。

测试人员和编码人员是彼此独立的。

从用户的视角进行测试,很容易被大家理解和接受。

有助于暴露任何规格不一致或有歧义的问题。

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


只有一小部分可能的输入被测试到,要测试每个可能的数据流几乎是不可能的。

没有清晰和简明的规格,测试用例是很难设计的。

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

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

不能直接针对特定的程序段,这些程序可能非常复杂(因此可能隐藏更多的问题)。

通过白盒测试与黑盒测试的比较,可以看出,白盒和黑盒这两类测试的出发点是不同的:

白盒测试考虑的是测试软件的代码,它不保证完整的需求规格是否被满足。

而黑盒测试只考虑需求规格,它不保证实现的所有部分是否被测试到。黑盒测试会发现遗漏的缺陷,指出规格的部分没有被完成。

(2)黑盒和白盒测试的常用技术

黑盒和白盒测试的常用技术,参考下面的图中内容。

时间: 2024-10-07 20:43:47

白盒测试 和 黑盒测试的相关文章

白盒测试和黑盒测试

1,一般软件开发人员和测试人员对白盒测试和黑盒测试的感念都有一定的认识,但认为是编代码所做的测试是白盒测试,黑盒测试不用编写代码,这其实是一种误解. 2,首先说一下概念,任何工程产品(注意是任何工程产品)都可以使用以下两种方法之一进行测试.黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求.白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查. 软件的黑盒测试意味着测试要在软件的接口处进行.这种方法是把测试对象

ホワイトボックステストとブラックボックステストの区別(白盒测试与黑盒测试的区别)

近几天,章老师留下了实验课内容,是白盒测试与黑盒测试的具体测试方法.在课程中的第三章和第四章内容中老师具体讲解了黑盒测试与白盒测试,以及两者的联系和区别. 今天总结如下: 一.定义: 白盒测试:是通过程序的源代码进行测试而不使用用户界面.这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正. 黑盒测试:又被称为功能测试.数据驱动测试或基于规格说明的测试,是通过使用整个软件或某种软件功能来严格地测试, 而并没有通过检查程序的源代码或者很清楚地了解该软件

测试基础知识(白盒测试,黑盒测试,测试用例,功能测试等等)

测试基础知识 找实习工作的过程中总结了下测试基础知识,编程能力重要,测试基础同样重要,希望对大家有帮助 软件测试方法:静态测试和动态测试                     白盒测试和黑盒测试                     传统测试与面向对象测试 软件测试过程:单元测试,集成测试,系统测试,验收测试 按测试类型:功能.性能.界面.易用性测试.兼容性测试.安全性测试.安装测试 (单元测试:在编码过程中,对每个小程序单元测试) (集成测试:将单元集成在一起后,可称为组件) 回归测试.冒

软件测试———白盒测试、黑盒测试与灰盒测试

软件测试是一种用来促进鉴定软件的正确性.完整性.安全性和质量的过程.其的目的是尽快尽早地发现在软件产品中所存在的各种问题——与用户需求.预先定义的不一致性,即为了在软件中发现尽可能多的缺陷和不足的地方. 对于软件测试分类,最被大家熟悉的是根据软件结构与算法的角度来分类的:白盒测试.黑盒测试与灰盒测试. 白盒测试又被称结构测试.透明盒测试.逻辑驱动测试或基于代码的测试,是对软件的过程性细节做细致的检查.对于白盒测试,测试员必须要全面了解程序的内部逻辑结构.对所有逻辑路径进行测试."白盒"

初探灰盒测试——介于白盒测试与黑盒测试的测试

学术性的定义—什么是灰盒: 灰盒是一种程序或系统上的工作过程被局部认知的装置.灰盒测试测试,也称作灰盒分析,是基于对程序内部细节有限认知 上的软件调试方法. 为什么需要灰盒测试:  灰盒测试由方法和工具组成,这些方法和工具取材于应用程序的内部知识和与之交互的环境,能够用于黑盒测试以增强测试 效率.错误发现和错误分析的效率.它是介于白盒测试与黑盒测试之间的,灰盒测试关注输出对于输入的正确性,同时也关 注内部表现,但这种关注不象白盒那样详细.完整,只是通过一些表征性的现象.事件.标志来判断内部的运行

白盒测试VS黑盒测试

白盒测试 一.定义 白盒测试是一种测试用例设计方法.在这里,盒子指的是被测试的软件,白盒,顾名思义即是盒子是可视的,你清楚盒子内部的东西以及里面是如何运作的.因此,白盒测试需要对系统内部的结构和工作原理有一定的了解,并且基于这个知识来设计你的测试用例. 二.使用白盒测试方法产生的测试用例能够完成的功能 (1)       保证一个模块中的所有独立路径至少被使用一次. (2)       对所有逻辑值均测试true和false. (3)       在上下边界以及可操作范围内运行所有循环. (4)

第八周作业:白盒测试与黑盒测试

黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求. 白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查. 黑盒测试也称功能测试或数据驱动测试,它是通过测试来检测每个功能是否都能正常使用.在测试地,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息.黑盒测试着眼于

白盒测试与黑盒测试

白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作. 这一方法是把测试对象看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序所有逻辑路径进行测试,通过在不同点检查程序的状态,确定实际的状态与预期的状态一致. 采用什么方法对软件进行测试呢?常用的软件测试方法有两大类:静态测试方法和动态测试方法.其中软件的静态测试不要求在计算机上实际执行所

对白盒测试黑盒测试的一点理解

白盒测试:是通过程序的源代码进行测试而不使用用户界面.这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正. 黑盒测试:又被称为功能测试.数据驱动测试或基于规格说明的测试,是通过使用整个软件或某种软件功能来严格地测试, 而并没有通过检查程序的源代码或者很清楚地了解该软件的源代码程序具体是怎样设计的.测试人员通过输入他们的数据然后看输出的结果从而了解软件怎样工作.(以上来自百度百科) 我的理解是白盒测试,就是对源代码进行测试,就跟我们在oj上做题类似,