Java 在JUnit4.13中使用参数化的.Parameter
我在导入中得到一个“无法解析符号参数”。我必须使用JUnit4.13,我认为这段代码可以在JUnit4.12中使用。为了使以下代码正常工作,我可以做哪些更改Java 在JUnit4.13中使用参数化的.Parameter,java,junit,junit-runner,Java,Junit,Junit Runner,我在导入中得到一个“无法解析符号参数”。我必须使用JUnit4.13,我认为这段代码可以在JUnit4.12中使用。为了使以下代码正常工作,我可以做哪些更改 import org.junit.Test; import org.junit.runners.Parameterized; import org.junit.runners.Parameterized.Parameter; @RunWith(Parameterized.class) public class MyTest {
import org.junit.Test;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameter;
@RunWith(Parameterized.class)
public class MyTest {
@Parameterized.Parameter(0)
private String arg1;
@Parameterized.Parameter(1)
private long arg2;
public MyTest(String arg1, long arg2) {
this.arg1 = arg1;
this.arg2 = arg2;
}
@Parameterized.Parameters
public static Collection argPairs() {
return Arrays.asList(new Object[][] {
{"using arg1", Long.parseLong(arg1) },
{"using arg2", Long.parseLong(arg2) }
});
}
@Test
public void test1() {
// stuff
}
}
代码中有几个问题。其他人可以为您修复代码,但最好自己修复。运行代码,查看错误并修复它。如果您无法修复该问题,则只发布它。@PratapiHemantPatel发现我使用的是junit“4.31”,但我刚刚发现它是junit的内部版本(大约6年前)。难怪我在谷歌上找不到信息。修复方法是删除两个“@Parameterized.Parameter”注释,因为它们不受支持。我意识到这个问题可能对任何人都没有用处。我应该删除它还是添加一个可接受的答案?