Вы можете использовать провайдер данных. В вашем тестовом классе аннотируйте тест:
@Test(dataProvider="SearchProvider")
И вот как должен выглядеть ваш провайдер данных:
@DataProvider(name="SearchProvider")
public Object[][] getDataFromDataprovider(){
return new Object[][]
{
{ "browser", "chrome" },
{ "browserVersion", "78.0" },
{ "os", "OS X" }
};
}
В качестве альтернативы, вы можете создать отдельный класс для провайдера данных и прочитать json содержание, используя следующее:
@DataProvider
public Object[][] getSearchProvider() throws FileNotFoundException {
JsonElement jsonData = new JsonParser().parse(new FileReader("<json path>"));
JsonElement dataSet = jsonData.getAsJsonObject().get("dataSet");
List<TestData> testData = new Gson().fromJson(dataSet, new TypeToken<List<TestData>>() {
}.getType());
Object[][] returnVal = new Object[testData.size()][1];
int i = 0;
for (Object[] each : returnVal) {
each[0] = testData.get(i++);
}
return returnVal;
}