CSV слишком простой и тупой для хранения данных тестов, предлагаю хранить эти данные в json, т.к. json огонь и его все любят.
1 Ставим json.simple через Maven:
<dependency> <groupId>com.googlecode.json-simple</groupId> <artifactId>json-simple</artifactId> <version>1.1.1</version> </dependency>
2 Пишем метод, который принимает как сырые данные json формата, так и путь к .json файлу:
public static JSONObject parseJsonData(String data) throws ParseException, IOException { boolean isJsonContent = data.substring(0, 1).matches(\"\\\\{\"); Object object; JSONParser parser = new JSONParser(); if (isJsonContent) object = parser.parse(data); else object = parser.parse(new FileReader(data)); return (JSONObject) object; }
3 Он возвращает обьект типа JSONObject, с которым можно ковыряться удобными способами:
Object jsonRequests = jsonObject.get(\"Requests\"); int currentRequestId = 0; JSONObject request = (JSONObject) jsonRequests.get(currentRequestId); String requestName = (String) request.get(\"Name\"); JSONArray testCases = (JSONArray) request.get(\"TestCases\");
Из JSONObject можно выковыривать любые данные, а с JSONArray работать как с обычным массивом.