黑盒测试是什么?

3

我在网上搜索了很多资料,但每个来源都有不同的说法。

因此,我进行了两种测试。第一种是TMap的“数据循环测试”,第二种是输入输出黑盒测试。

现在我知道,黑盒测试是在不查看代码的情况下测试输入输出值。

以下是黑盒测试的模板: 编号 定义 预期值 实际值

但是Tmap表示,黑盒测试是由不同种类的测试技术组成的。比如“数据循环测试”。

那么黑盒测试到底是什么?它是一个测试技术还是一组测试技术?如果它是一组测试技术,这种预期-实际测试技术叫什么?


1
黑盒测试是在不知道被测试软件(SUT)的实际代码的情况下进行测试,你所拥有的只是对SUT的API。我猜有不同的技术可以进行黑盒测试? - nhahtdh
1
黑盒测试的不同技术包括使用不同的技术来选择要测试的输入值组合。对于某些情况,可以详尽地测试所有输入值的组合,但在绝大多数情况下这是不切实际的,因此问题变成了“我应该选择哪些输入值来进行测试,以便在给定数量的输入示例下为我提供最大的代码正确性信心?” - Simon
好的,那么黑盒测试是一系列不同类型的测试吗?那么预期-实际值测试叫什么? - user2170346
可能是黑盒测试 vs 白盒测试的重复问题。 - Joe
这篇文章讲解得非常好 https://learntestautomation.com/black-box-testing/ - Josh Adams
4个回答

1

黑盒测试:

  • 一种将程序视为黑盒的测试方法。
  • 仅基于需求分析进行测试[规范、用户文档等]。

也称为

  1. 功能测试(测试所有功能)

  2. 数据驱动测试(对不同数据集执行相同操作)

  3. I/O驱动测试

黑盒测试适用于所有级别的测试(例如单元测试、组件测试和系统测试)- 在集成、系统和验收测试期间进行。

测试用例设计方法:

常用的方法:

  1. 等价类划分:将输入域划分为有效/无效类别,并对于有效的输入类别,进行相等的划分,以减少测试用例。

  2. 边界值分析:检查输入的边界情况,一个小于边界值,一个大于边界值。

  3. 错误猜测:是一种基于直觉和经验的特殊方法,用于确定可能暴露错误的测试。

参考资料:http://en.wikipedia.org/wiki/Exploratory_testing


1

定义:

  • 黑盒测试是一种测试方法,可以是功能性或非功能性测试,不考虑组件或系统的内部结构。因此,在此方法中,不考虑程序的内部结构,测试人员应向程序提供输入集并测试程序是否输出预期结果。

  • 这种方法被称为黑盒,因为测试人员不知道软件程序。软件程序就像一个黑盒子,测试人员无法看到其中的内容。

黑盒测试技术

以下是一些可用于设计黑盒测试的技术:

  • 等价类划分

等价类划分是一种软件测试设计技术,涉及将输入值划分为有效和无效分区,并从每个分区选择代表性值作为测试数据。

  • 边界值分析

边界值分析是一种软件测试设计技术,涉及确定输入值的边界,并选择处于边界和边界内/外的值作为测试数据。

  • 基于图形的测试方法
每个应用程序都由一些对象构建而成。所有这些对象都被识别并绘制成图表。从这个对象图中,可以识别出每个对象之间的关系,并相应地编写测试用例以发现错误。
错误猜测法
这完全基于测试人员的先前经验和判断力。错误猜测是猜测错误可能隐藏在哪里的艺术。对于这种技术,没有特定的工具,只需编写覆盖所有应用程序路径的测试用例即可。

1
我一直用一个类比来思考。想象一下,你是一名在测试汽车引擎是否工作的机械师。
黑盒测试就像是关闭引擎盖,坐进车里,按下所有按钮和踏板,开车四处转弯,观察它们是否正常工作。你可能不知道汽车里有哪种类型的引擎,或者具体如何运作,但是通过与引擎交互的所有外部部件的操作,你可以测试引擎是否按照你期望的方式工作。

0

黑盒测试是一种基于规格的测试。有许多黑盒测试技术,例如: 1.等价类划分 2.边界值分析 3.决策表 4.状态转换 5.用例测试

黑盒测试技术是一种动态测试技术。在这种类型的测试技术中,测试人员不知道代码。他或她根据输入和输出进行测试。在这种类型的测试中包括功能和非功能测试。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接