白盒测试和黑盒测试的优缺点,黑盒测试的优点

 白盒测试和黑盒测试是软件测试的两种基本方法。

 白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西以及里面是如何运作的。“白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。“白盒”法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。

 

 黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

 白盒测试的优缺点

 白盒测试优点:

 1、迫使测试人员去仔细思考软件的实现;

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

 3、揭示隐藏在代码中的错误;

 4、对代码的测试比较彻底;

 5、最优化。

 白盒测试缺点:

 1、昂贵,系统庞大时,测试开销会非常大;

 2、测试基于代码,只能测试开发人员做的对不对,而不能知道设计是否正确,可能会漏掉一些功能需求,无法检测代码中遗漏的路径和数据敏感性错误;

 3、不验证规格的正确性,程序运行会有很多不同的路径,不可能测试所有的运行路径。

 黑盒测试优缺点

 黑盒测试优点:

 1、比较简单,不需要了解程序的内部的代码及实现;

 2、与软件的内部实现无关;

 3、从用户的角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;

 4、基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;

 5、在做软件自动化测试时较为方便。

 黑盒测试缺点:

 1、结果取决于测试用例的设计,测试用例的设计部分优势来源于经验,覆盖率较低,大概只能达到总代码量的30%;

 2、自动化测试的复用性较低,没有状态转换的概念,还做不到针对被测试程序的状态转换来实现。

相关推荐

相关文章