知识点
解释黑盒测试技术、白盒测试技术和基于经验的测试技术之间的特点、共性和差异
软件测试技术类型导图
黑盒测试技术的定义
黑盒测试技术是基于系统功能或非功能规格说明来设计或者选择测试用例的技术,不涉及软件内部结构;
有的时候,黑盒测试技术又被称为基于规格说明的测试技术;
黑盒测试技术的环境
黑盒测试技术的分类
等价类技术
边界值分析
决策表测试
状态转换测试
基于用例的测试
白盒测试技术的定义
白盒测试技术是通过分析组件/系统的内部结构来产生和/或选择测试用例的技术;
白盒测试技术,有时候又叫做结构化测试技术或者基于结构的测试技术,或者基于代码的测试技术;
白盒测试技术需要熟悉源代码和详细的设计文档,并且以它们作为测试用例设计的输入;
白盒测试技术的环境
桩模块:一个软件组件框架的实现或特殊目的实现,用于开发和测试另一个调用或依赖于该组件的组件。它代替了被调用的组件[IEEE];
驱动模块:代替某个软件组件来模拟控制和/或调用其他组件或系统的软件或测试工具;
测试台的架构
白盒测试技术的特征
根据软件的结构信息设计测试用例,比如软件代码和软件设计;
可以通过已有的测试用例来测量软件的测试覆盖率,并通过白盒测试技术来系统化的导出设计用例,从而提高覆盖率;
白盒测试技术的分类
语句覆盖
判定覆盖
条件覆盖
多重条件覆盖
路径覆盖
基于规格说明测试技术的特征
使用正式或非正式的模型来描述需要解决的问题、软件或其组件等;
根据这些模型,可以系统地导出测试用例;
基于结构的测试技术的特征
根据软件的结构信息设计测试用例,例如软件代码和详细设计信息
可以通过已有的测试用例测量软件的测试覆盖率,并通过系统化的设计测试用例提高覆盖率
基于经验的测试技术的特征
测试用例根据参与人员的经验和知识来编写;
测试人员、开发人员、用户和其他的利益相关者对软件、软件使用和环境等方面所掌握的知识;
对可能存在的缺陷及其分布情况的了解;
为什么黑盒测试和白盒测试
黑盒测试技术只是观察程序的输入/输出行为。测试对象的功能是我们