java - 是否有与 NUnit 的 TestCaseAttribute 等效的 JUnit?

标签 java unit-testing junit

在 NUnit 中,我可以这样做:

[TestCase(12,3,4)]
[TestCase(12,2,6)]
[TestCase(12,4,3)]
public void DivideTest(int n, int d, int q)
{
  Assert.AreEqual( q, n / d );
}

它将使用每组参数运行 3 个测试用例。有没有办法在 JUnit4 中做这样的事情?我试着用谷歌搜索它,结果只得出这样的结果:Parameterized unit tests with JUnit 4这比上面的 NUnit 示例复杂和冗长得多。

最佳答案

看看junitparams然后你可以这样写代码:

@Test
@Parameters({ "17, false", 
              "22, true" })
public void personIsAdult(int age, boolean valid) throws Exception {
  assertThat(new Person(age).isAdult(), is(valid));
}

(来自上述链接的示例)

您必须使用注释 @RunWith(JUnitParamsRunner.class) 来使用 JUnitParamsRunner 而不是普通的 JUint runner

关于java - 是否有与 NUnit 的 TestCaseAttribute 等效的 JUnit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20671967/

相关文章:

java - Spring异步发送消息时 "topics"这个词是什么意思?

scala - 在 IntelliJ 中调试 scala sbt 集成测试

unit-testing - Lagom服务测试

java - 如何使用 mockito 测试主要功能的开关案例?

java - 群签名方案与公钥加密的区别

java - 从 org.wso2.siddhi.core.event.Event 类检索数据

java - Hibernate 如何将 setter/getter 映射到属性?

javascript - 在 ('success' 或 ('error' 上触发 clipboard.js 以对其进行单元测试

java - 如何在 JUnit Test Java 中替代 Mockito 来 stub 类

JBOSS 6 中的 javaee.jar 和 javax.ejb.jar?