问题标签 [white-box]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
30915 浏览

unit-testing - 单元测试、黑盒测试和白盒测试

什么是单元测试、黑盒测试和白盒测试?我用谷歌搜索,但我发现的所有解释都是非常技术性的。任何人都可以通过适当的示例以简单的方式回答这个问题吗?

0 投票
4 回答
28082 浏览

php - PHPUnit:对非公共变量进行断言

假设我有一个具有私有属性和关联的公共 getter 和 setter 的类。我想用 PHPUnit 测试该属性在使用 setter 后是否获得正确的值,或者 getter 返回正确的属性。

当然,我可以通过使用 getter 来测试 setter,以查看对象是否存储了正确的值,反之亦然以测试 getter。但是,这并不能保证私有属性就是正在设置的属性。

假设我有以下课程。我创建了一个属性,getter 和 setter。但是我在属性名称中打错了字,所以 getter 和 setter 实际上并没有操纵它们要操纵的属性

如果我运行以下测试

我会得到一个通行证。但是,实际上发生了我不希望的非常糟糕的事情。当调用 setName() 时,它实际上在类中创建了一个新属性,其名称我认为我的私有属性具有,只有 setter 创建的那个是公共的!我可以用以下代码证明这一点:

它会输出:

字符串(6)“杰拉德”

字符串(6)“杰拉德”

有什么方法可以从 PHPUnit 访问私有属性,这样我就可以编写测试来确保我认为正在获取和设置的属性实际上正在被获取和设置?

或者我应该在测试中做些什么来捕捉这样的问题而不试图访问被测对象的私有状态?

0 投票
2 回答
10794 浏览

testing - JUnit 是黑盒测试还是白盒测试?

JUnit 是黑盒测试还是白盒测试?我认为它是白盒,但我不确定。我正在寻找,但我找不到明确的答案。即使是对此进行简单的讨论也会很有用。

0 投票
1 回答
845 浏览

ios - UIImagePickerController 白屏?

早上好。

我遇到了 UIImagePickerController 除了白色之外没有显示任何内容的问题。我的主头文件中有一个 320x320 UIImageView:

随着:

_noCam 是在用户没有相机时放置在视图中的图像。这很好用。

我正在尝试在这个方形视图顶部显示(没有标准相机 GUI,但现在可以等待)相机。在我的主要课程中,我有:

}

我猜我在设置委托时遇到了问题。_self 给我一个类型的错误:

'来自不兼容的类型'ViewController *const _strong'

我正在使用 NSLogs 来检查方法是否正常工作,它告诉我调用了 viewDidLoad 和 viewDidAppear 方法并且检测到了摄像头但是我只是得到了白色视图。

任何帮助将不胜感激。

谢谢。

0 投票
1 回答
9703 浏览

java - PowerMock:将 Whitebox.invokeMethod(...) 正确用于将 Object[] 作为参数的方法

问题:java.lang.AssertionError:参数数量错误

研究: 1.最初,我尝试过:invokeMethod(Objecttested, String methodToExecute, Object... arguments)

第 2 次、第 3 次和第 4 次调用方法 () 失败。(错误:未找到给定参数的方法)

我认为这可能是由于 PowerMock 没有推断出正确的方法的问题;因此,我切换到:invokeMethod(Objecttested, String methodToExecute, Class[] argumentTypes, Object... arguments)

  1. 父类有一个 isEmpty() 方法,该方法在子类中被完全重复的 isEmpty() 方法覆盖。(遗留代码)没有其他不同签名的 isEmpty() 方法。有许多采用参数的方法,但没有其他采用 Object[] 的方法(例如,没有采用 Integer[] 作为参数的方法)。

  2. 在上面的第二个 assertTrue 语句之前,更改为 arr = new Object[1] 会使该断言语句通过。

任何帮助是极大的赞赏。谢谢!

0 投票
2 回答
1466 浏览

testing - 动态黑盒测试与静态白盒测试

如果我们必须在动态黑盒测试和静态白盒测试之间做出选择,我们应该更喜欢哪一个?动态黑盒测试是在不了解底层代码的情况下进行测试,而静态白盒测试是在不执行代码的情况下进行代码审查。

0 投票
2 回答
1137 浏览

testing - 决策/条件覆盖

是否有工具可以显示提供决策/条件覆盖的测试用例数量?

例如:

3 个案例足以覆盖决策/条件。

4 个案例足以覆盖决策/条件。

这是真的吗?

0 投票
2 回答
16225 浏览

java - Java 白盒测试

如何在 Java 应用程序上进行白盒测试?这是否意味着我必须逐课测试?

根据我的研究,我知道:

白盒测试是一种软件测试方法,其中被测试项目的内部结构/设计/实现对测试人员来说是已知的。测试人员通过代码选择输入来练习路径并确定适当的输出。编程知识和实施知识是必不可少的。白盒测试是在用户界面之外进行测试,并深入到系统的本质。

白盒测试应该是什么样的?

0 投票
3 回答
4639 浏览

java - 是否可以在已经存在的对象中模拟单个方法?

对于集成测试,我需要模拟 Java 服务客户端中的特定方法,而不会破坏其中的其余信息。它没有自构造函数,所以这样的解决方案是不可能的:

有没有办法模拟 deleteItem 方法,以便将凭据、端点等保存在现有的 DBClient 对象中?

编辑:在这种情况下,mockito 不可用

0 投票
2 回答
339 浏览

testing - 测试方法

我目前正在写我的论文,并正在调查软件质量和测试。

我发现很难区分以下术语,并想知道是否有人可以帮助我这样做。

(动态和静态测试)和(验证和验证测试)

我目前的理解是动态测试和验证测试是一回事,静态测试和验证测试也是如此。我认为动态测试是指测试系统的性能和行为,而静态测试则着眼于控制流、数据流、编码标准和代码度量等检查。

我对此是否正确?(我相信是这样)

黑盒和白盒测试

我最大的问题是了解这两者的来源。从一些来源,我开始相信这些与动态和静态测试相同。但是其他人让我相信这些只是测试技术的类别,例如边界分析和分区测试。

在这方面的任何帮助都会很棒!