测试基础知识4》》黑盒测试和白盒测试

在前面的测试基础知识中,我概括了测试的类型,它们是按照测试阶段或者测试执行手段等方式进行分类的。详细可查看本人博客:测试基础知识2》》软件测试的分类

对于基础入门测试人员,应当熟悉掌握白盒测试和黑盒测试及其对应方法,在面试和职业要求上都是必备知识。

白盒测试

白盒测试(White-box Testing,又称逻辑驱动测试,结构测试),它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。


软件的白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。

白盒测试又分为静态和动态测试:
静态测试:静态方法是指按一定步骤直接检查源代码或代码的测试方法,包括代码审查、桌面检查、代码走查等方法。
 

动态测试:动态测试是指按一定步骤生成测试用例并驱动被测程序运行来发现错误,包括基本路径、符号测试、逻辑驱动覆盖、循环测试、数据流测试等方法。

采用白盒技术设计测试用例的方法有以下几种:
逻辑覆盖法
基路径测试法
循环语句测试
数据流测试
代码检查法
域测试法
符号测试法
动态白盒测试技术

黑盒测试

黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。 白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。
软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。

黑盒测试和白盒测试的区别:

任何工程产品(注意是任何工程产品)都可以使用这两种方法之一进行测试。因为他们有不同的优缺点,在工作中,我们会结合使用。下面具体看看两者的差别。
黑盒测试主要是为了发现以下几类错误:
1、是否有不正确或遗漏的功能?
2、在接口上,输入是否能正确的接受?能否输出正确的结果?
3、是否有数据结构错误或外部信息(例如数据文件)访问错误?
4、性能上是否能够满足要求?
5、是否有初始化或终止性错误?
白盒测试主要是想对程序模块进行如下检查:
1、对程序模块的所有独立的执行路径至少测试一遍。
2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。
3、在循环的边界和运行的界限内执行循环体。
4、测试内部数据结构的有效性,等等。

以此可见,多种测试方法也不能保证软件程序没有错误。软件测试有一个致命的缺陷,即测试的不完全、不彻底的。所以,日常工作中程序只能进行少量(相对于穷举的巨大数量而言)的有限的测试。

在此,建议感兴趣的朋友,如果需要详尽的了解可以寻找概念的书籍看,也可以网上搜索资料库,在这里推荐一个网站:牛客网,上面有题库,方便大家看题,另外如果是入门的,喜欢看视频学习的,就建议上:慕课网。

其实资料有很多,别人总结的,和自己接触的,善于归纳整理,变成自己的!

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
白盒测试黑盒测试都是软件测试常用的测试方法,它们有着不同的测试方式和适用范围。 1. 异同点 白盒测试测试需要了解被测试系统的内部结构和实现细节,以此为基础设计测试用例。测试者可以通过调试代码、检查变量、分支覆盖等方式进行测试白盒测试的优点在于可以发现代码的错误和潜在问题。缺点是测试需要具备一定的编程知识,且测试的时间和资源消耗较多。 黑盒测试测试者不需要了解被测试系统的内部结构和实现细节,只需要根据输入输出来验证系统的正确性、可靠性和安全性等方面。测试者可以通过等价类划分、边界值分析、决策表等方式进行测试黑盒测试的优点在于不需要测试者具备编程知识测试时间和资源消耗较少。缺点是无法发现代码的错误和潜在问题。 2. 用例 白盒测试用例: - 检查变量:检查变量的定义、初始化、赋值、使用等是否正确。 - 分支覆盖:测试所有的分支类型,包括if、switch等。 - 语句覆盖:测试所有的语句类型,包括循环、函数调用、异常处理等。 - 路径覆盖:测试所有的代码路径,包括从一个函数到另一个函数的调用等。 黑盒测试用例: - 等价类划分:将输入值划分为等价类,测试每个等价类的输入是否能得到正确的输出。 - 边界值分析:测试系统在输入的边界值处是否能得到正确的输出。 - 决策表:设计出所有的输入和输出的组合情况,测试每个组合情况的输入是否能得到正确的输出。 总之,白盒测试黑盒测试都有各自的优缺点和适用范围。在实际的软件测试,应该根据系统的特点和测试目的,选择合适的测试方法进行测试

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值