白盒测试:
依据:LLD(详细设计)
目的:利用不同的逻辑率到达某种程度的代码覆盖率(考虑全部程度的代码覆盖率会增加本)
步骤:静态分析和动态分析
优点:迫使测试人员去了解软件的实现
检测代码中的每条路径和分支
揭示隐藏在代码中的错误
对代码的测试进行比较彻底
缺点:白盒测试投入较大,成本较高
白盒测试不验证规格的正确性
无法检查代码中遗漏的路径和数据敏感性错误
黑盒测试:
依据:SRS(Software requriement specification软件需求说明书)
目的:从质量特性的不同方面,对软件进行测试,检测该软件是否实现了SRS中所有显示和隐式的需求
步骤:构造输入和预期输出,通过一定的操作步骤来测试软件。
优点:对较大的代码单元来说,黑盒测试比白盒测试的效率高
测试人员不需要了解实现得细节,包括特定的编程语言
测试人员和编程人员是相互独立的
从用户的角度进行测试,很容易被接受和理解
有助于暴露任何与闺阁不一致或者歧异的地方
测试用例可以在规格完成后马上进行
缺点:不能测试程序内部特定部位
如果程序未执行的代码无法发现
没有清晰的和简明的规格,测试用例很难被设计
等价类划分法优缺点
等价类划分法的优点是考虑了单个输入域的各类情况,避免了盲目或随机选取输入数据的布完整性和覆盖的不稳定性。
等价类划分法虽然简单易用,但是没有对组合情况进行充分的考虑。需要结合其他测试用例设计的方法进行补充
边界值分析法优点及缺点
长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。
不过边界值分析法与等价类划分法一样,没有考虑输入之间的组合情况,因此需要进一步结合其他测试用例设计方法。