如何将文件路径传递给dataprovider方法

时间:2018-03-27 15:29:07

标签: java testng dataprovider

我有2个Test方法(@Test())方法,我需要来自不同文件的数据用于这些测试用例,我在两个测试用例中使用dataprovider,我的dataprovider如何读取每个测试用例的文件路径。

 @DataProvider(name = "dp")
      public Object[][] getData() throws FileNotFoundException {
          JsonArray array = new JsonParser().parse(new FileReader("src/test/resources/TestInputFiles/workspace/demo.json")).getAsJsonArray();
          Object[][] data = new Object[array.size()][1];
          for (int i = 0; i < array.size(); i++) {
              data[i][0] = array.get(i);
          }
          return data;
      }

1 个答案:

答案 0 :(得分:0)

您可以将测试方法作为参数传递给dataprovider。 其中一个选择是

  1. 根据testname,可以选择文件。
  2. 或者

    1. 您可以为文件名创建自定义注释并使用注释注释您的测试,然后使用上面的Method对象来检索注释值。如果测试用例的数量更多,这将有所帮助。