在 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/