【软件测试】黑盒测试和白盒测试

1.黑盒测试

1.1 概念

黑盒测试,它是通过测试来检测每个功能是否都能正常使用。

黑盒测试又叫功能测试、数据驱动测试或基于需求规格说明书的功能测试。该类测试注重于测试软件的功能性需求。

采用这种测试方法,测试工程师把测试对象看作一个黑盒子,完全不考虑程序内部的逻辑结构和内部特性,只依据程序的《需求规格说明书》,检查程序的功能是否符合它的功能说明。测试工程师无需了解程序代码的内部构造,完全模拟软件产品的最终用户使用该软件,检查软件产品是否达到了用户的需求。黑盒测试方法能更好、更真实地从用户角度来考察被测系统的功能性需求实现情况。

1.2 作用

黑盒测试方法着重测试软件的功能需求,是在程序接口上进行的测试,主要是为了发现以下错误:

(1)是否有功能错误,是否有功能遗漏。
(2)是否能够正确地接收输入数据并产生正确的输出结果
(3)是否有数据结构错误或外部信息访问错误。
(4)是否有程序初始化和终止方面的错误

1.3 测试方法

具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法、场景法等。

方法的具体使用可以参考我的这篇博文:

链接:测试用例的设计方法

2.白盒测试

1.1 概念

白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。

白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,即清楚盒子内部的东西以及里面是如何运作的。“白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。“白盒”法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。

1.2 作用

通过检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖测试。在程序不同地方设立检查点,检查程序的状态,以确定实际运行状态与预期状态是否一致。

1.3 测试方法

白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、路径覆盖和程序变异。

3.黑盒测试和白盒测试的区别

黑盒测试和白盒测试主要有以下三个区别:

从定义上的不同:白盒测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。而黑盒测试着重测试软件功能,它并不涉及程序的内部结构和内容特性。黑盒测试并不能取代白盒测试,它与白盒是互补的测试方法,它很可能发现白盒测试不易发现的其他类型错误。

从测试目的上的不同:黑盒测试的目的是检测是否有不正确或遗漏的功能;数据或者参数上,输入能否正确接收;是否有数据结构错误或外部信息访问错误;性能上是否能够满足要求;是否有初始化或终止性错误。而白盒测试的目的是通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致,而不顾它的功能。

检测方式上的不同:白盒测试是穷举路径测试,黑盒测试是穷举输入测试,这两种方法是基于完全不同的观点,反应了事物的两个极端,它们各有侧重和优势,但不能彼此替代。在现代的测试理念中,这两种测试方法不是截然分开的,而是交叉使用。

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
软件测试中,黑盒测试白盒测试是两种不同的测试方法,具体介绍如下: 黑盒测试:在黑盒测试中,测试人员只关注软件的输入和输出,不考虑内部实现细节。测试人员根据软件规格说明或需求文档,设计测试用例并运行测试用例,检查软件是否按照需求规格说明的要求正确地输出结果。黑盒测试的例子包括功能测试、性能测试、安全测试等。 白盒测试:在白盒测试中,测试人员需要了解软件内部的实现细节,包括程序的代码结构、控制流程、变量定义等。测试人员设计测试用例并运行测试用例,检查软件是否按照预期的逻辑执行。白盒测试的例子包括单元测试、集成测试、系统测试等。 举例来说,一个购物网站的黑盒测试可以包括以下几个方面: 1. 功能测试:例如,测试用户能否成功注册、登录、添加商品到购物车、下单等功能。 2. 性能测试:例如,测试网站在高并发情况下能否正常运行,响应时间是否满足要求。 3. 安全测试:例如,测试网站是否存在SQL注入、XSS攻击等安全漏洞。 一个购物网站的白盒测试可以包括以下几个方面: 1. 单元测试:例如,测试购物车功能的代码是否能够正确地添加商品、删除商品等。 2. 集成测试:例如,测试不同模块之间的接口是否正确、数据传输是否正常。 3. 系统测试:例如,测试整个购物网站是否符合规格说明的要求、逻辑是否正确。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值