JUnitParamsRunner-无法将变量参数或对象数组传递给测试()?

JUnitParamsRunner-无法将变量参数或对象数组传递给测试()?,junit,Junit,我发现我无法声明公共无效测试(Obj…objects)并使用JUnitParamsRunner参数化我的测试..运行时引发的异常。 但是,如果我将其更改为公共无效测试(Obj obj1、Obj obj2) 有什么想法吗?代码如下: private静态对象[]testingParam(){ 返回新对象[]{newobject[]{newobj(“123”),newobj(“123”)}; } @试验 @参数(方法=“测试参数”) 公共无效测试(Obj…对象){ //做一些测试 } 虽然我没

我发现我无法声明
公共无效测试(Obj…objects)
并使用JUnitParamsRunner参数化我的测试..运行时引发的异常。 但是,如果我将其更改为公共无效测试(Obj obj1、Obj obj2) 有什么想法吗?代码如下:

private静态对象[]testingParam(){
返回新对象[]{newobject[]{newobj(“123”),newobj(“123”)};
}    
@试验
@参数(方法=“测试参数”)
公共无效测试(Obj…对象){
//做一些测试
}

虽然我没有机会测试这一点,但您可能需要一个
Obj[]
数组,而不是
Object[]
数组来匹配vararg。请注意
Object[]
Obj[]
不是协变的,不能相互转换

private static Object[] testingParam() {
  return new Object[] { new Obj[] { new Obj("123"), new Obj("123") } };
}
相反,如果您试图忽略varargs并将该参数视为原始数组,则可能需要第三个数组包装器:

private static Object[] testingParam() {
  return new Object[] {  // <-- call the testing method once
      new Object[] {     // <-- with this array of parameters
          new Obj[] {    // <-- and the first parameter is a 2-element Obj array
              new Obj("123"), new Obj("123") } } };
}
private静态对象[]testingParam(){
返回新对象[]{//