51Testing软件测试论坛

标题: 灰盒与白盒区别 [打印本页]

作者: Fuli    时间: 2004-9-22 16:55
标题: 灰盒与白盒区别
灰盒与白盒区别?
作者: ayong401    时间: 2004-9-22 17:01
黑盒测试就像神农尝百草一样,在只知道目标与相关连的帐号之后,开始进行测试工作。此类型的测试主要是在找出比较常见且已知的大问题,其所花费的时间与资源相对也是最少。但是,也有可能遗漏一些逻辑上的安全问题。
    至于灰盒测试,则是测试者对应用程序的了解一开始很少,但可随着需要而取得相关的原始码或是设计说明文件,花的时间较黑盒测试长,但是可能会找到一些黑盒测试过程中找不到的安全漏洞。举例来说,曾有一家公司的程序设计师在一个 Apache module 中埋了后门,只需利用特定的 Header 名称就可以下指令。这种安全炸弹在黑盒测试里面,可说是不可能找到的,因为其组合可能有千百万种,没有人可以在有限的时间内找到,而灰盒测试不同,基本上,测试者可以检查特定部份的原始码,而找出上述的后门。
    所谓的白盒测试,即是所有信息都对测试者开放,通常也会伴随着所谓原始码检查的工作。自然而然,白盒测试会是最耗时间但是也会是最完整的测试。每一个应用程序应该最少要通过一次白盒式的测试才能确保安全无忧。
作者: Fuli    时间: 2004-9-22 17:03
是兄弟俩啊!^-^
作者: ghl5502    时间: 2004-9-22 18:08
关系挺紧密的。顶一下
作者: macrovan    时间: 2004-9-24 10:42
还是第一次听说有灰盒测试的说法.
作者: 我爱测试    时间: 2004-9-24 12:11
有见解!!
作者: qcl6169271    时间: 2004-9-24 23:50
标题: thank you

作者: songfun    时间: 2004-9-26 01:11
灰盒 是 从 黑盒测试衍生来的,偏重与黑盒方面的测试。具体的可以看看 古乐 老师的《软件测试概论》
作者: archonwang    时间: 2004-10-24 12:59
感觉上应该是黑盒追溯到代码的一种测试方法。
作者: time    时间: 2004-10-24 15:13
灰盒还是比较适合作为测试入门的,让你尽快上手了解测试,又不乏技术深度
作者: simple    时间: 2004-10-24 20:30
那么说,灰盒测试是要有一定的开发基础的,而黑盒要求的则要相对的少,不知道对不对。
作者: ayong401    时间: 2004-10-25 08:13
灰盒参考了部分程序代码!
作者: jsjlj    时间: 2004-10-25 13:06
各位大虾,能不能尽可能详细的说说白盒测试需要那些信息,灰盒测试又是如何做。现实中,很多测试者都搞不清楚白盒和灰盒的区别。
作者: chenhp    时间: 2004-11-4 22:18
ayong401
版主
说:每一个应用程序应该最少要通过一次白盒式的测试才能确保安全无忧。

此话不妥!!
作者: nancy.liu    时间: 2004-11-12 10:23
能对灰盒测试的相关内容还多一点介绍吗?谢谢!
作者: cecliawangy    时间: 2004-11-12 16:40
总觉得这是部分的白盒测试,只是选取了,一小段代码来审核,有点偏机。
作者: NickFranck    时间: 2004-11-13 08:27
感谢二楼
作者: pktest    时间: 2004-11-13 12:27
标题: 能否再说详细点!

作者: bitter    时间: 2004-11-15 19:58
"自然而然,白盒测试会是最耗时间但是也会是最完整的测试。每一个应用程序应该最少要通过一次白盒式的测试才能确保安全无忧。"

白盒测试只是一种方法, 既然只是方法, 就不必一定使用.任何一种测试都不会完整,白盒也不例外,而且白盒测试也不见得就最耗时.

至于灰盒, 在理论上多有争议. 我觉得可以这样理解, 如果你做的测试即不是严格的黑盒,也不是严格的白盒,那就是灰盒.
作者: 月下幽魂    时间: 2004-11-15 20:15
“所谓的白盒测试,即是所有信息都对测试者开放,通常也会伴随着所谓原始码检查的工作。自然而然,白盒测试会是最耗时间但是也会是最完整的测试。每一个应用程序应该最少要通过一次白盒式的测试才能确保安全无忧。”
那么说性能测试,好像基本上用不到白盒测试方法。因为基本上它所得到的信息非常有限,且基本上没有代码。
作者: bitter    时间: 2004-11-16 11:55
要看性能测试的目的, 也是有使用白盒测试的情况的. 比如分析那些代码消耗了最多的性能. 我用过jprobe,就有这样的功能.
作者: pacific    时间: 2004-11-18 13:30
黑盒测试又称功能测试、数据驱动测试或基于规格说明的测试,是在完全不考虑程序内部结构和内部特性的情况下,检查输入与输出之间关系是否符合要求。
白盒测试又称结构测试、逻辑驱动测试或基于程序的测试,是在已知程序内部结构的情况下设计测试用例的测试方法。
显然,白盒测试适合在单元测试中运用,而在独立测试阶段多采用黑盒测试方法。
作者: daring82    时间: 2005-4-24 14:11
不知道这样说正确不:黑合就是黑色中不知道什么就只知识输进输出来测试,黑盒的优点是白盒的缺点.相互补通吧,灰盒就是白和黑盒的混合的盒.
作者: lbzhong    时间: 2005-4-30 15:20
灰盒测试:介于白盒测试于黑盒测试之间的测试。灰盒测试关注输出对于输入的正确性,同时也关注内部表现,但这种关注不像白盒那样详细完整,只是通过表现出来的特性、事件、标志来进行内部的运行判断。
作者: jackei    时间: 2005-4-30 17:31
所谓的“灰盒”,个人理解是指在测试用例设计时参考了程序的内部逻辑和更具体的算法,然后对测试用例进行增补或修改,最后仍然通过运行程序的方式来执行测试。

[ Last edited by jackei on 2005-4-30 at 17:33 ]
作者: skinapi    时间: 2005-5-1 02:09
关于黑盒测试、白盒测试以及灰盒测试可以看看下面这篇文章:
http://bbs.51testing.com/viewthread.php?tid=11976&fpage=1

对于灰盒,我不太同意jackei的理解(:)),如果进行测试设计时参考了程序的内部逻辑和具体算法,应该看成白盒测试。灰盒测试一个典型的例子是测试时通过log信息(可以借助于工具)来判断测试执行的情况。

另外需要指出的是我们不要仅仅局限于搞清这三个名词的具体含义,更应该关注的是搞清楚后对我们进行测试所能起到的作用。Bret Pettichord在上面的那篇文章中有一段评述个人觉得很有道理:
Let me be perfectly clear. I personally avoid classifying testing as white box or black box. I don't think these terms are useful for either describing or categorizing testing. There is some value to thinking through the concepts. But i hope that doing so will make it plain that what really need is more attention to how we gather information about the software we test, how we decide to test it, and how we collect information about the tests we've run.
大致意思就是他尽量避免把测试简单划分成白盒测试和黑盒测试。他不认为这些名词对描述测试和划分测试有什么帮助。他认为更应该注意的是通过理解这些名词明白如何收集测试所需要的信息,决定如何进行测试,以及在执行测试时通过哪些信息来进行判断。
作者: jackei    时间: 2005-5-7 15:20
尽量避免把测试简单划分成白盒测试和黑盒测试。他不认为这些名词对描述测试和划分测试有什么帮助。他认为更应该注意的是通过理解这些名词明白如何收集测试所需要的信息,决定如何进行测试,以及在执行测试时通过哪些信息来进行判断。

有道理。
作者: walker_lai    时间: 2006-9-3 14:55
标题: 回复 #17 cecliawangy 的帖子
学西了
作者: shawn0321    时间: 2006-9-6 13:54
呵呵,受益颇多!
谢谢了,哪位老师愿意收测试方面的学生的话,请加我吧!
MSN: wangyue226@hotmail.com
QQ: 86160811
作者: wxf_xsfy    时间: 2006-9-6 18:58
原帖由 lbzhong 于 2005-4-30 15:20 发表
灰盒测试:介于白盒测试于黑盒测试之间的测试。灰盒测试关注输出对于输入的正确性,同时也关注内部表现,但这种关注不像白盒那样详细完整,只是通过表现出来的特性、事件、标志来进行内部的运行判断。

我想问一下灰盒测试的目的是什么?它介入的时机又是什么时候呢?通过什么手段来进行呢 ?
作者: riki    时间: 2006-9-7 10:22
受教了。。
作者: swq737    时间: 2007-2-8 21:18
是不是黑盒测试就不需要查看原代码,而白盒测试需要从源代码层次进行测试?
作者: lymusicar    时间: 2007-6-22 19:40
我是测试新手,谢谢帮助,现在急着充电 sdlkfj3
作者: charliemr    时间: 2007-6-24 20:58
灰盒测试是介于黑盒测试与白盒测试之间,最常见的灰盒测试是集成测试。
作者: pigpigworld1    时间: 2007-6-25 14:54
谢谢
作者: wing1799    时间: 2007-7-13 09:43
灰盒是介于黑盒和白盒间的测试,既测试功能又包含部分代码实现




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2