问题标签 [parameterized-unit-test]

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 投票
3 回答
3071 浏览

java - 在参数化 JUnit 4+ 测试中测试可选异常

我正在尝试为一个方法编写一个单元测试,该方法将字符串作为参数,如果格式错误则抛出异常(如果可以,则为 NONE)。我想编写一个参数化测试,它提供几个字符串和预期的异常(包括如果输入字符串格式正确,则没有抛出任何异常的情况!)。如果尝试使用 @Test(expect=SomeException.class) 注释,我遇到了两个问题:

  1. 不允许expect=null。那么我如何测试不抛出异常的预期结果(对于格式良好的输入字符串)?

  2. 期望=不可能?我还没有尝试过,但我在阅读后强烈怀疑是这种情况(请您说明这是否属实?): http ://tech.groups.yahoo.com/group/junit/message/19383 这个那么似乎是我找到的最好的解决方案。您对此有何看法,尤其是与之相比: 如何在参数化测试中测试异常?

提前感谢您的帮助,我期待讨论:)

0 投票
1 回答
8182 浏览

unit-testing - 谷歌测试:有没有办法结合类型参数化和值参数化的测试?

我知道如何分别开发类型参数化测试和值参数化测试。我想弄清楚的是是否可以将两者结合起来。换句话说,创建一个通用测试,该测试采用该类型的任何类型和值范围。

0 投票
4 回答
2789 浏览

delphi - 我可以在 DUnit 中编写“参数化”测试吗

我正在使用 DUnit 来测试一个 Delphi 库。我有时会遇到一些情况,我编写了几个非常相似的测试来检查一个函数的多个输入。

有没有办法在 DUnit 中编写(类似于)参数化测试?例如,为合适的测试过程指定输入和预期输出,然后运行测试套件并获得关于测试的多次运行中哪一次失败的反馈?

(编辑:一个例子)

例如,假设我有两个这样的测试:

我可能有更多这样的测试,它们做的事情完全相同,但输入和期望不同。我不想将它们合并到一个测试中,因为我希望它们能够独立通过或失败。

0 投票
2 回答
2017 浏览

unit-testing - 您如何使用规范编写参数化测试?

我有几个我想测试的特征的不同实现,并且测试只使用特征的方法签名,所以看起来我应该能够使用参数化测试。但是,specs2 网站似乎没有描述编写参数化测试的简单方法。最接近的是如何“共享示例”,但您仍然需要编写测试和测试代码的每个组合,我希望能够在其中指定:

A. 测试
B. 要测试的类

这可以单独指定,但将测试两者的笛卡尔积。

0 投票
1 回答
1048 浏览

java - 参数化运行器中的 Junit 测试用例构造函数调用

我写了一个长参数化测试,其中一个参数是一个构造函数调用,使用双括号语法为二维数组的每一行构造一个不同的对象:

由于 JUnit 的理念是在每个 @Test 上调用测试用例构造函数,我假设它会对参数化测试执行相同的操作 - 但我看到它只是调用该构造函数(为参数化测试定义的构造函数)每行一次,而不是每行每次测试一次。

因此,测试字段在全局范围内运行,并且测试相互影响。我想知道是否有一种方法可以强制运行器为每个测试调用构造函数,就像常规的 JUnit 运行器一样。谷歌和 JUnit 页面在这个案例上没有帮助我。我真的不想重写整个测试,在这一点上它是广泛且相当可读的。

0 投票
1 回答
501 浏览

c# - xunit.net 参数化单元测试:为每个组合显示红色/绿色?

当您有 X 单元测试 * Y 配置时,参数化单元测试非常有用。

我有3 个单元测试,每个测试都必须在5 个特定情况下运行。
我使用 xUnit.net 的Theory/ PropertyData feature,效果很好。

问题:在 Test Runner UI 中,每个单元测试都有一个绿色/红色符号,表示3
这使得评估进度变得困难:符号为红色,直到所有配置都完美运行。
我想要15 个符号,每个单元测试 * 配置一个,以了解哪个特定组合出错了。

如何获得15 个符号?
我可以使用另一个 xunit.net UI。

在此处输入图像描述

2013 更新:我最终切换到具有此功能的 NUnit。

0 投票
3 回答
1224 浏览

c# - 具有参数化单元测试的 .NET 测试框架,每个组合显示红色/绿色?

当您有 X 单元测试 * Y 配置时,参数化单元测试非常有用。

我有3 个单元测试,每个测试都必须在5 个特定情况下运行。
我使用 xUnit.net 的Theory/ PropertyData feature,效果很好。

问题:在 Test Runner UI 中,每个单元测试都有一个绿色/红色符号,表示3
这使得评估进度变得困难:符号为红色,直到所有配置都完美运行。
我想要15 个符号,每个单元测试 * 配置一个,以了解哪个特定组合出错了。

xunit.net尚未实现显示15 个符号的功能。

我愿意切换到另一个测试框架只是为了获得这个功能。
问题:是否有任何 .NET 测试框架具有此功能?
任何类型的报告都可以(GUI、HTML 等)

在此处输入图像描述

0 投票
2 回答
2631 浏览

delphi - 我们可以使用 DUnit 编写什么样的测试用例?

我正在使用德尔福 7。

我是 DUnit 的新手,我怀疑我可以使用 DUnit 编写什么样的测试用例以及如何编写(这对我来说非常重要)。

是否可以为特定的按钮单击事件编写测试用例?因为在那种情况下,可能会使用大量代码,其中使用各自的数据库相关过程或函数调用更多单元。在这种情况下,编写测试用例的最佳方法是什么?如何编写?(如果可能的话,一个例子或参考将对我有很大的帮助)。

因为,在示例 DUnit 项目中,我们无法编写完整的应用程序代码集,因为在某些情况下可能需要创建其他表单。

所以,我的疑问是在这种情况下如何编写测试用例,通常我们可以使用 DUnit 编写什么类型的测试用例,重要的是如何编写?

0 投票
1 回答
1405 浏览

java - 当 JUnit 4 使用参数化运行器超时时添加更多信息

我正在使用@RunWith(value = Parameterized.class). 这工作正常,没有问题。但是,当我的 34 个测试中的任何一个超时时,我只会收到消息java.lang.Exception: test timed out after 15000 milliseconds。我希望它也显示测试的参数。

我什至尝试像下面的代码那样做(我知道在大多数情况下这是一个可怕的解决方案,我只是想看看我是否可以随时显示消息),但这不起作用,它仍然导致上面的消息。

如何让 JUnit 也显示this.parameter测试结果超时?

这是一个非常简单的示例测试类,它显示了这个问题:

有了这个ShowMyMessageTest,我有时会得到预期的“超时值达到 42”,有时我只会得到“java.lang.Exception:1000 毫秒后测试超时”。在这种情况下,我希望始终获得“超时值 42”。

0 投票
8 回答
81332 浏览

java - 在一个参数化类(junit)中创建多个参数集

目前,我必须为要使用多个不同输入测试的每个方法创建一个参数化测试类。有没有办法将这些添加到一个文件中?

现在有CalculatorTestAdd.java一组参数用于检查Add()函数是否正常工作。我是否有可能将此集合“连接”到Add()函数并创建一个用于该Subtract()方法的附加集合并将此方法添加到同一个测试类中,从而生成一个名为的文件CalculatorTest.java