软件测试:黑盒测试和白盒测试的优缺点以及比较
发布时间:2024-04-07

白盒测试的优缺点

 

白盒测试的优点如下:

1.迫使测试人员仔细地思考软件的实现方式。

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

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

4.对代码的测试比较彻底。

5.可以优化测试。

 

白盒测试的缺点如下:

1) 成本昂贵。

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

3) 无法验证规格的正确性。

 

黑盒测试的优缺点

 

黑盒测试的优点如下:

① 对于更大的代码单元(子系统甚至系统级)米说,黑盒测试比白盒测试的效率要高。

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

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

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

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

⑥ 测试用例可以在确定规格之后马上进行。


黑盒测试的缺点如下:

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

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

3) 如果测试人员不知道开发人员已经执行过的用例,那么在测试数据上会存在不必要的重复。

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

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

 

黑盒测试和白盒测试比较


从上面白盒测试和黑盒测试的例子来看,我们可以发现白盒测试会考虑黑盒测试不会考虑的方面,同样,黑盒测试也会考虑白盒测试不会考虑的方面。


白盒测试只考虑测试软件代码,它不保证完整的需求规格是否满足;而黑盒测试只考虑测试需求规格,它不保证实现的所有部分是否测试到。黑盒测试会发现遗漏的缺陷,指出规格的哪些部分没有完成,而白盒测试会发现代码方面的缺陷,指出实现的哪些部分是错误的。


白盒测试比黑盒测试的成本要高很多,白盒测试需要在规划测试前产生源代码,并且在确定合适的数据和决定软件是否正确方面需要投入更多的工作量,建议尽可能使用可获得的规格从黑盒测试方法开始测试计划。白盒测试的计划应当在黑盒测试的计划已经成功通过之后再开始,使用已经产生的流程图和路径的判定结果。路径应当根据黑盒测试计划进行检查并且使用额外需要的测试。


一个白盒测试的失败会导致一次修政,这需要所有的黑盒测试重复执行并且重新决定白盒测计的路径。为了降低成本,可以把测试过程当成一个质量保证过程而不是一个质量控制过程。早期工作产品的质量直接决定了后期测试的工作量,早期工作产品的质量越好,后期测试能发现的错误越少,相应的测试和修改工作量就会减少,反之则增加。



更多软件测试相关推荐:

软件测试更多干货文章

软件测试就业培训


文章来源:网络  版权归原作者所有

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8103),我们将立即处理

相关阅读
/