白盒测试:
是指实际运行被测程序,通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法、溢出、路径和条件等方面的缺点或者错误,进而加以修正。
黑盒测试:
又称功能测试、数据驱动测试或基于规格说明的测试,是通过使用整个软件或某种软件功能来严格地测试,,而并没有通过检查程序的源代码,或者很清楚地了解该软件的源代码程序具体是怎样设计的。测试人员通过输入他们的数据看输出的结果,从而了解软件怎样工作。应该更适合测试网页游戏。
区别一:从定义上
白盒测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。而黑盒测试着重测试软件功能,它并不涉及程序的内部结构和内容特性。黑盒测试并不能取代白盒测试,它与白盒是互补的测试方法,它很可能发现白盒测试不易发现的其他类型错误。
区别二:从测试目的上
黑盒测试的目的是检测是否有不正确或遗漏的功能;数据或者参数上,输入能否正确接收;是否有数据结构错误或外部信息访问错误;性能上是否能够满足要求;是否有初始化或终止性错误。而白盒测试的目的是通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致,而不顾它的功能。
区别三:检测方式上
白盒测试是穷举路径测试,黑盒测试是穷举输入测试,这两种方法是基于完全不同的观点,反应了事物的两个极端,它们各有侧重和优势,但不能彼此替代。在现代的测试理念中,这两种测试方法不是截然分开的,而是交叉使用。
扩展资料
白盒测试的优点:
1.能仔细考虑软件的实现
2.可检测代码中的每条分支和路径
3.揭示隐藏在代码中的错误
4.对代码的测试比较彻底
白盒测试的缺点:
1.昂贵
2.无法检测代码中遗漏的路径和数据敏感性错误
3.不验证规格的正确性
黑盒测试的优点:
1.对于子系统甚至系统效率要比白盒测试高
2.测试人员不需要了解实现的细节(特定编程语言)
3.测试人员和编程人员彼此独立
4.从用户的角度进行测试很容易理解和接受
5.有助于暴露规格的不一致或有歧义的问题
6.测试用例可以在规格完成后马上进行
黑盒测试的缺点:
1.只有一小部分输入被测试到,要测试每个可能的输入几乎不可能。
2.没有清晰、简明的规格,测试用例很难设计。
3.如果测试人员不被告知开发人员已经执行过的用例,在测试数据上会存在不必要的重复。
4.有很多程序路径没有被测试到。
5.不能直接针对特定程序段测试,而这些程序段可能很复杂,有可能隐藏更多的问题。
6.大部分和研究相关的测试都是直接针对白盒测试的。
参考资料:百度百科-黑盒测试白盒测试
白盒测试和黑盒测试是软件测试的两种不同方法,任何工程产品(注意是任何工程产品)都可以使用二者之一进行测试:\x0d\x0a白盒测试:是通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。\x0d\x0a黑盒测试:是通过使用整个软件或某种软件功能来严格地测试, 而并没有通过检查程序的源代码或者很清楚地了解该软件的源代码程序具体是怎样设计的。测试人员通过输入他们的数据然后看输出的结果从而了解软件怎样工作。在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收和正确的输出。\x0d\x0a \x0d\x0a二者最大的区别应该就是测试对象不一样,白盒测试主要针对的是程序代码逻辑,黑盒测试主要针对的是程序所展现给用户的功能,简单的说就是前者测试后台程序后者测试前台展示功能黑盒测试\x0d\x0a\x0d\x0a黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否\x0d\x0a\x0d\x0a都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的\x0d\x0a\x0d\x0a情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序\x0d\x0a\x0d\x0a是否能适当地接收输入数锯而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。 \x0d\x0a\x0d\x0a黑盒测试方法主要有等价类划分、边值分析、因—果图、错误推测等,主要用于软件确认测试。“黑盒”\x0d\x0a\x0d\x0a法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。“黑盒”法是穷举输\x0d\x0a\x0d\x0a入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。实际上测\x0d\x0a\x0d\x0a试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但是可能的输入进行测试。\x0d\x0a\x0d\x0a白盒测试\x0d\x0a\x0d\x0a白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是\x0d\x0a\x0d\x0a否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按\x0d\x0a\x0d\x0a预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证\x0d\x0a\x0d\x0a。 “白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。“白盒”法是穷举路径测试。在\x0d\x0a\x0d\x0a使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的\x0d\x0a\x0d\x0a独立路径数是天文数字。但即使每条路径都测试了仍然可能有错误。第一,穷举路径测试决不能查出程序\x0d\x0a\x0d\x0a违反了设计规范,即程序本身是个错误的程序。第二,穷举路径测试不可能查出程序中因遗漏路径而出错\x0d\x0a\x0d\x0a。第三,穷举路径测试可能发现不了一些与数据相关的错误。\x0d\x0a\x0d\x0a还有一个灰盒测试\x0d\x0a灰盒测试\x0d\x0a灰盒测试,确实是介于二者之间的,可以这样理解,灰盒测试关注输出对于输入的正确性,同时也关注内\x0d\x0a\x0d\x0a部表现,但这种关注不象白盒那样详细、完整,只是通过一些表征性的现象、事件、标志来判断内部的运\x0d\x0a\x0d\x0a行状态,有时候输出是正确的,但内部其实已经错误了,这种情况非常多,如果每次都通过白盒测试来 *** \x0d\x0a\x0d\x0a作,效率会很低,因此需要采取这样的一种灰盒的方法。 灰盒测试结合了白盒测试盒黑盒测试的要素.它\x0d\x0a\x0d\x0a考虑了用户端、特定的系统知识和 *** 作环境。它在系统组件的协同性环境中评价应用软件的设计。灰盒测\x0d\x0a\x0d\x0a试由方法和工具组成,这些方法和工具取材于应用程序的内部知识盒与之交互的环境,能够用于黑盒测试\x0d\x0a\x0d\x0a以增强测试效率、错误发现和错误分析的效率。 灰盒测试涉及输入和输出,但使用关于代码和程序 *** 作\x0d\x0a\x0d\x0a等通常在测试人员视野之外的信息设计测试。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)