黑盒测试:
把测试对象当作看不见内部的黑盒,在完全不考虑程序内部结构和处理过程的情况下,测试者仅依据程序功能的需求规范考虑,确定测试用例和推断测试结果的正确性。
白盒测试:
通过对程序内部结构的分析、检测来寻找问题。白盒测试可以把程序看成装在一个透明的盒子里,检查是否所有的结构及路径都是正确的,检查软件内部动作是否按照设计说明的规定正常进行。白盒测试又称结构测试。
白盒测试方法划分
1、静态白盒测试:
-
代码评审:通过阅读代码来检查源代码与编码标准的符合性以及代码质量的活动。
-
代码检查:通过阅读代码的方式,检查软件设计的正确性
2、动态白盒测试
-
逻辑覆盖:通过对程序逻辑结构的遍历实现程序的覆盖
-
基本路径覆盖(从入口到出口中可能走的所有路径)
工作中对于黑盒测试和白盒测试的选择
1、黑盒测试方法选择的综合策略
-
首先进行等价类划分
-
在任何情况下都必须使用边界值分析方法
-
可以用错误推测法追加一些测试用例
-
对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度。如果没有达到要求的覆盖标准,应当再补充足够的测试用例
-
如果程序的功能说明中含有输入条件的组合情况,则一开始就可选用因果图法和判定表驱动法
-
对于参数配置类的软件,要用正交试验法选择较少的组合方式达到最佳效果
-
功能图法也是很好的测试用例设计方法,我们可以通过不同时期条件的有效性设计不同的测试数据
-
对于业务流清晰的系统,可以利用场景法贯穿整个测试案例过程,在案例中综合使用各种测试方法
2、白盒测试方法选择的综合策略
-
在测试中,应尽量先用工具进行静态结构分析。
-
测试中可采取先静态后动态的组合方式
-
先进行静态结构分析、代码检查和静态质量度量
-
再进行覆盖率测试
对日白盒测试大致观点
覆盖程序中所有可能的路径
输入文件无
输入文件是0件
程序内有异常的话单独测试