默默巫 发表于 2009-11-30 12:05:37

[有奖问答20]黑盒测试与白盒测试的区别是什么?

黑盒测试与白盒测试的区别是什么?

答题前请复制以下回贴格式(蓝字部分),并填写好个人真实有效信息,以确保奖品发送无误。


**** Hidden Message *****
答题:

lwstar 发表于 2009-11-30 12:26:54

**** Hidden Message *****
答题:黑盒测试与白盒测试的区别是什么?
黑盒测试:功能测试、数据驱动测试、基于规格说明书的测试
白盒测试:从用户观点,按规格说明书要求的输入数据与输出数据的对应关系设计测试用例,是根据程序外部特征进行测试。
黑盒测试的优点:1 适用于各阶段测试;2 从产品功能角度测试;3容易入手生成测试数据
黑盒测试的缺点:1 某些代码得不到测试;2 如果规格说明有误,则无法发现;3 不易进行充分性测试
黑盒测试的性质:是一种确认技术,回答“我们在构造一个正确的系统吗?”
白盒测试:开盒测试、结构测试、玻璃盒测试、基于覆盖的测试
白盒测试是根据程序内部逻辑结构进行测试。
白盒测试的优点:1 可构成测试数据使特定程序部分得到测试;2 有一定的充分性度量手段;3 可或较多工具支持
白盒测试的缺点:1 不易生成测试数据(通常);2 无法对未实现规格说明的部分进行测试;3 工作量大,通常只用于单元测试,有应用局限
白盒测试的性质:是一种验证技术,回答“我们在正确地构造一个系统吗?”

283017152 发表于 2009-11-30 14:20:42

**** Hidden Message *****

答题:

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

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

软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。黑盒测试主要是为了发现以下几类错误:
  1、是否有不正确或遗漏的功能?
  2、在接口上,输入是否能正确的接受?能否输出正确的结果?
  3、是否有数据结构错误或外部信息(例如数据文件)访问错误?
  4、性能上是否能够满足要求?
  5、是否有初始化或终止性错误?

软件的白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。白盒测试主要是想对程序模块进行如下检查:
  1、对程序模块的所有独立的执行路径至少测试一遍。
  2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。
  3、在循环的边界和运行的界限内执行循环体。
  4、测试内部数据结构的有效性,等等。

sun_mail 发表于 2009-11-30 14:45:36

**** Hidden Message *****
答题:
黑盒测试主要针对功能的测试
白盒测试主要是对代码的测试

syr1234563044 发表于 2009-11-30 14:57:52

**** Hidden Message *****
答题:黑盒测试:主要是根据软件的功能进行测试,不涉及软件的内部结构;
   白盒测试:主要根据软件的内部结构进行测试,更直接的就是可以接触软件的程序代码,比如:单元测试

love_yuzhilian 发表于 2009-11-30 15:46:57

**** Hidden Message *****
答题:
同意楼上
白盒主要针对代码,路径进行测试
黑盒测试主要针对功能进行测试

[ 本帖最后由 love_yuzhilian 于 2009-11-30 15:50 编辑 ]

moon_jency 发表于 2009-11-30 16:16:45

**** Hidden Message *****
答题:
黑盒测试
黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,
测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数锯而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。黑盒测试方法主要有等价类划分、边值分析、因—果图、错误推测等,主要用于软件确认测试。 “黑盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。
白盒测试:
白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。“白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。“白盒”法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。

cuidong 发表于 2009-11-30 17:40:44

**** Hidden Message *****
答题:软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。黑盒测试主要是为了发现以下几类错误:

1、是否有不正确或遗漏的功能?
2、在接口上,输入是否能正确的接受?能否输出正确的结果?
3、是否有数据结构错误或外部信息(例如数据文件)访问错误?
4、性能上是否能够满足要求?
5、是否有初始化或终止性错误?

软件的白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。白盒测试主要是想对程序模块进行如下检查:

1、对程序模块的所有独立的执行路径至少测试一遍。
2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。
3、在循环的边界和运行的界限内执行循环体。
4、测试内部数据结构的有效性,等等。

jency_moon 发表于 2009-11-30 18:03:58

**** Hidden Message *****
答题:
黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。
白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。

软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。黑盒测试主要是为了发现以下几类错误:

1、是否有不正确或遗漏的功能?
2、在接口上,输入是否能正确的接受?能否输出正确的结果?
3、是否有数据结构错误或外部信息(例如数据文件)访问错误?
4、性能上是否能够满足要求?
5、是否有初始化或终止性错误?

软件的白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。白盒测试主要是想对程序模块进行如下检查:

1、对程序模块的所有独立的执行路径至少测试一遍。
2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。
3、在循环的边界和运行的界限内执行循环体。
4、测试内部数据结构的有效性,等等。

zhx2009 发表于 2009-11-30 18:30:52

**** Hidden Message *****
答题:
白盒测试:关注软件内部结构和程序的设计实现,主要测试依据是设计文档
黑盒测试:不关心软件内部结构,只关心输入输出,主要测试依据是需求文档

曹操 发表于 2009-11-30 21:56:59

**** Hidden Message *****
答题:
白盒测试主要就是对代码的审查;而黑盒测试主要就是对软件功能的测试,包括易用性、功能等等。

waft1101 发表于 2009-11-30 23:53:40

**** Hidden Message *****

黑盒测试
特征:只关心软件的外部表现,不关心内部设计与实现。
依据:软件需求
测试人员:任何人(包括开发人员、独立测试人员和用户)
测试驱动程序:一般无需编写额外的测试驱动程序

白盒测试
特征:关注软件的内部设计与实现,要跟踪源代码的运行。
依据:设计文档
测试人员:由开发人员兼任测试人员的角色
测试驱动程序:需要编写额外的测试驱动程序

zgyfxsh 发表于 2009-12-1 13:16:11

**** Hidden Message *****
答题
1、执行测试人员不同
2、测试覆盖目标不同
3、测试动机不同
4、测试方法不同
5、评估测试方法不同
6、工具不同

yunyun0220 发表于 2009-12-1 14:46:29

**** Hidden Message *****
答题:
顾名思义,所谓的黑盒测试是将软件看成一个盒子,不关心它的内部构造,只是关心输入输出是否满足要求,软件是否可用等。而白盒测试就是将软件看成一个透明的盒子,要分析其代码及结构等。他们的测试目的,测试方法,测试手段等都是不一样的。

luckying 发表于 2009-12-1 17:06:24

**** Hidden Message *****
答题:   

黑盒测试:内部结构未知。
          目的:考察对用户需求的符合度
          测试工具:QTP,WinRunner,LoadRunner
         
白盒测试:内部结构已知
          目的:考察单元内的逻辑结构
          测试工具:C++test、Jtest、Nunit、Junit

(灰盒测试):介于黑盒和白盒测试之间

cswy 发表于 2009-12-1 21:22:31

**** Hidden Message *****
答题
白盒测试:主要测试依据是设计文档
黑盒测试:主要测试依据是需求文档

dreadlands 发表于 2009-12-1 23:24:17

**** Hidden Message *****
答题:黑盒测试,检查软件的实现与需求规格说明书是否相一致。评估标准为需求覆盖率
   白盒测试,检查软件的代码实现和详细设计是否相一致,评估标准为逻辑覆盖率

TLover 发表于 2009-12-2 09:57:19

**** Hidden Message *****
答题:

各位总结的很全、受教了!

156881887 发表于 2009-12-2 12:39:39

**** Hidden Message *****
答题:
看了大家写的都很多,不过我想这个问题应该比较简单吧。

黑盒测试,是完全以一个用户的角度进行试用,重在功能和性能;
白盒测试,对代码的检查,评审,从代码级上测试程序可能出现的问题。
个人认为文档测试似乎也可以归到白盒测试中。

[ 本帖最后由 156881887 于 2009-12-7 14:33 编辑 ]

nihaolh 发表于 2009-12-2 14:23:31

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

白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。
白盒主要针对代码,路径进行测试
黑盒测试主要针对功能进行测试
页: [1] 2
查看完整版本: [有奖问答20]黑盒测试与白盒测试的区别是什么?