白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西以及里面是如何运作的。
黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。
两种测试都适合网页游戏。
区别如下:
1、测试方法不同
白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、路径覆盖和程序变异。
黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法、场景法等。
2、作用不同
白盒测试通过检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖测试;在程序不同地方设立检查点,检查程序的状态,以确定实际运行状态与预期状态是否一致。
黑盒测试法注重于测试软件的功能需求,主要试图发现功能不正确或遗漏、界面错误、输入和输出错误、数据库访问错误、性能错误和初始化和终止错误等几类错误。
3、特点不同
白盒测试依据软件设计说明书进行测试、对程序内部细节的严密检验、针对特定条件设计测试用例、对软件的逻辑路径进行覆盖测试。
黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试。
白盒测试优缺点:
优点:
1. 迫使测试人员去仔细思考软件的实现;
2. 可以检测代码中的每条分支和路径;
3. 揭示隐藏在代码中的错误;
4. 对代码的测试比较彻底;
5. 最优化。
缺点:
1. 昂贵;
2. 无法检测代码中遗漏的路径和数据敏感性错误;
3. 不验证规格的正确性。
白盒测试:
白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西以及里面是如何运作的。"白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。
"白盒"法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。
黑盒测试:
黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。
黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
最大区别:
二者最大的区别就是测试对象不一样,白盒测试主要针对的是程序代码逻辑,黑盒测试主要针对的是程序所展现给用户的功能,简单的说就是前者测试后台程序后者测试前台展示功能。
扩展资料:
黑盒测试的测试方法:
从理论上讲,黑盒测试只有采用穷举输入测试,把所有可能的输入都作为测试情况考虑,才能查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进行测试。
这样看来,完全测试是不可能的,所以我们要进行有针对性的测试,通过制定测试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。黑盒测试行为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测试行为具体量化的方法之一。具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法、场景法等。
参考链接:黑盒测试-百度百科
本回答被网友采纳白盒测试:是通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。
黑盒测试:是通过使用整个软件或某种软件功能来严格地测试, 而并没有通过检查程序的源代码或者很清楚地了解该软件的源代码程序具体是怎样设计的。
测试人员通过输入他们的数据然后看输出的结果从而了解软件怎样工作。在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收和正确的输出。
二者最大的区别应该就是测试对象不一样,白盒测试主要针对的是程序代码逻辑,黑盒测试主要针对的是程序所展现给用户的功能,简单的说就是前者测试后台程序后者测试前台展示功能。
扩展资料
白盒测试过程
白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、路径覆盖和程序变异。
白盒测试法的覆盖标准有逻辑覆盖、循环覆盖和基本路径测试。其中逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。六种覆盖标准发现错误的能力呈由弱到强的变化:
1.语句覆盖每条语句至少执行一次。
2.判定覆盖每个判定的每个分支至少执行一次。
3.条件覆盖每个判定的每个条件应取到各种可能的值。
4.判定/条件覆盖同时满足判定覆盖条件覆盖。
5.条件组合覆盖每个判定中各条件的每一种组合至少出现一次。
6.路径覆盖使程序中每一条可能的路径至少执行一次。
黑盒测试
在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收和正确的输出。
它不管程序内部结构是什么样的,只是从用户出发,根据产品应该实现的实际功能和已定义好的产品规格来验证产品所应该具有的功能是否实现,每个功能是否都能正常使用,是否满足用户要求。
参考资料:百度百科-白盒黑盒测试
黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。
百盒测试:已知产品内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否要经过检查。
区别:
1.在测试的方面上有所不同:软件的黑盒测试意味着测试要在软件的接口处进行。软件的白盒测试是对软件的过程性细节做细致的检查。
2.在测试方法上存在差异:黑盒测试是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。
白盒测试这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。
3.侧重程序的错误方面上有不同:黑盒测试主要是为了发现以下几类错误:是否有不正确或遗漏的功能?在接口上,输入是否能正确的接受?能否输出正确的结果?
白盒测试主要是想对程序模块进行如下检查:对程序模块的所有独立的执行路径至少测试一遍。对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。
黑盒测试着重测试软件功能。黑盒测试并不能取代白盒测试,它是与白盒测试互补的测试方法,它很可能发现白盒测试不易发现的其他类型错误。
白盒测试主要针对的是程序代码逻辑,黑盒测试主要针对的是程序所展现给用户的功能,简单的说就是前者测试后台程序后者测试前台展示功能。
参考资料:黑盒测试白盒测试-百度百科
白盒测试:
是指实际运行被测程序,通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法、溢出、路径和条件等方面的缺点或者错误,进而加以修正。
黑盒测试:
又称功能测试、数据驱动测试或基于规格说明的测试,是通过使用整个软件或某种软件功能来严格地测试,,而并没有通过检查程序的源代码,或者很清楚地了解该软件的源代码程序具体是怎样设计的。测试人员通过输入他们的数据看输出的结果,从而了解软件怎样工作。应该更适合测试网页游戏。
区别一:从定义上
白盒测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。而黑盒测试着重测试软件功能,它并不涉及程序的内部结构和内容特性。黑盒测试并不能取代白盒测试,它与白盒是互补的测试方法,它很可能发现白盒测试不易发现的其他类型错误。
区别二:从测试目的上
黑盒测试的目的是检测是否有不正确或遗漏的功能;数据或者参数上,输入能否正确接收;是否有数据结构错误或外部信息访问错误;性能上是否能够满足要求;是否有初始化或终止性错误。而白盒测试的目的是通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致,而不顾它的功能。
区别三:检测方式上
白盒测试是穷举路径测试,黑盒测试是穷举输入测试,这两种方法是基于完全不同的观点,反应了事物的两个极端,它们各有侧重和优势,但不能彼此替代。在现代的测试理念中,这两种测试方法不是截然分开的,而是交叉使用。
扩展资料
白盒测试的优点:
1.能仔细考虑软件的实现
2.可检测代码中的每条分支和路径
3.揭示隐藏在代码中的错误
4.对代码的测试比较彻底
白盒测试的缺点:
1.昂贵
2.无法检测代码中遗漏的路径和数据敏感性错误
3.不验证规格的正确性
黑盒测试的优点:
1.对于子系统甚至系统效率要比白盒测试高
2.测试人员不需要了解实现的细节(特定编程语言)
3.测试人员和编程人员彼此独立
4.从用户的角度进行测试很容易理解和接受
5.有助于暴露规格的不一致或有歧义的问题
6.测试用例可以在规格完成后马上进行
黑盒测试的缺点:
1.只有一小部分输入被测试到,要测试每个可能的输入几乎不可能。
2.没有清晰、简明的规格,测试用例很难设计。
3.如果测试人员不被告知开发人员已经执行过的用例,在测试数据上会存在不必要的重复。
4.有很多程序路径没有被测试到。
5.不能直接针对特定程序段测试,而这些程序段可能很复杂,有可能隐藏更多的问题。
6.大部分和研究相关的测试都是直接针对白盒测试的。
参考资料:百度百科-黑盒测试白盒测试
本回答被网友采纳