DataProvider不适用于外部整数

时间:2016-07-07 11:15:04

标签: java junit testng dataprovider

我的@DataProvider看起来像这样:

    @DataProvider(name = "data")
    public Object[][] data() throws Exception {
    List myList= DBHelper.getList("SELECT x FROM property"); //Get DB data to list
    Object[] myArray = myList.toArray();//Convert to array
    int len = myArray .length; //Get max array index
    int randomIndex = General.createRandNumber(len); //create a random index
    return new Object[][]{
            {myArray [randomIndex]},
            {myArray [randomIndex]},
    };
}

当我运行@Test时,我会忽略测试 - 除非我用实数替换randomIndex,例如:{myArray [0]},

我无法弄清楚为什么会发生这种情况,并希望听到解释。

感谢。

1 个答案:

答案 0 :(得分:0)

想出来......

问题是我使用len作为随机数的长度,这是由于不存在的DB索引导致的。 这就是测试失败的原因。 有时你会对简单的事情感到困惑......( - :