一.黑盒测试和白盒测试
黑匣子测试:了解产品功能设计规格,可以测试实现的各项功能是否符合要求。
白盒测试:已知产品的内部工作过程,可以测试各项内部操作是否符合设计规范要求,所有内部成分是否经过检验。
1 .第一认识:
黑匣子测试
测试特点:测试功能;
测试依据:要求规格书
方法实例:等价类划分、边界值测试
优点:可以站在用户的立场上测试
缺点:不能测试程序内部的特定部位。 程序错了就发现不了。
白盒测试
测试特点:测试程序接口和结构
测试依据:软件程序
方法示例:逻辑复盖
优点:对程序内部特定部位进行覆盖测试。
缺点:无法验证程序的外部特性。
2 .第二认识:
黑匣子测试视为无法打开程序的黑匣子,在完全不考虑程序内部结构和内部特性的情况下,对“软件接口”和“软件功能”进行了测试,功能能否按照要求规格书正常使用黑匣子测试也称为功能测试或数据驱动测试。
白盒测试是指仔细检查软件的流程细节。 该方法将测试对象视为打开的盒子,测试人员可以利用程序内部的逻辑结构和相关信息设计或选择测试用例,测试程序的所有逻辑路径。 通过在不同的点检查程序的状态来确定实际状态是否与预期相符。 因此,白盒测试也称为“结构测试”或“逻辑驱动测试”。 白盒测试根据程序内部结构对程序进行测试,通过测试检查产品内部工作是否按设计规格书要求正常运行,检查程序中各通道是否按规定正常运行。
3 .第三认识:
黑匣子测试主要是为了发现以下错误。
)1)是否有不正确或被忽略的功能;
)2)界面是否正确接受输入? 能输出正确的结果吗?
)3)有无数据结构错误或访问外部信息(例如数据库文件)的错误?
)4)性能上能满足要求吗?
)5)是否存在初始化或终止性错误?
黑匣子的测试用例技术设计有边界值分析、等价类划分、错误估计法三种。
白盒测试主要想对程序模块进行以下检测:
(1)至少测试一次程序模块的所有独立执行路径;
2 )对于所有逻辑确定,可以至少测量一次“真”和“假”的情况。
(3)在循环边界和运行边界内运行循环体;
)4)测试内部数据结构的有效性等;
)5)静态白盒测试)即代码审核、正式审核和设计与程序代码验证;
6 )动态白盒测试利用查看代码功能和实现方法得到的信息设计并运行测试。 也称为结构测试。
白盒测试用例技术包括逻辑覆盖和基本的路径测试。
逻辑展望:一种基于程序内在逻辑结构的测试用例设计技术,测试人员必须清楚了解程序的逻辑结构。
基本路径测试:根据程序控制流程图,分析控制结构的环路复杂性,通过推导基本可行路径集合设计测试用例。