Огурец - это простой английский формат, который может понять Cucumber для запуска теста автоматизации. Язык файлов Gherkin является бизнес-читаемым доменным языком.
Этот код предназначен для преобразования вашего файла объектов Gherkin в формат JSON на основе инфраструктуры JSON Formatter.
Огурец в JSON Parser Main
// Файл объекта Gherkin в преобразованный в JSON основной класс
открытый класс GToJRun {
// Здесь задаем путь Gherkin для извлечения файла объектов и путь файла JSON к
// записать в формате JSON
private static String featurePath = «c: \ Json \ login.feature»;
закрытая статическая строка jasonPath = «c: \ Json \ login.json»;
// Установить как симпатичный / уродливый формат для вывода в формате JSON. По умолчанию это довольно
static GtoJCore testG = new GtoJCore («довольно»);
public static void main (String [] args) {
testG.gherkinTojson (featurePath, jasonPath);
}
}
Основной класс основан на платформе форматирования JSON. Вы можете получить время конвертации, если хотите проверить общее время обработки для файла большего размера.
Огурец в JSON Parser Core
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileWriter;
импорт java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import gherkin.formatter.JSONFormatter;
import gherkin.formatter.JSONPrettyFormatter;
import gherkin.parser.Parser;
import gherkin.util.FixJava;
// Корни в файл парсера Json.
открытый класс GtoJCore {
закрытый формат String;
// Получить общее время работы (необязательно)
long startTime = System.currentTimeMillis ();
public GtoJCore (String outFormat) {
this.format = outFormat;
}
public String getOutFormat () {
формат возврата;
}
public void gherkinTojson (String fPath, String jPath) {
// Определение файла объекта и пути к файлу JSON.
Строка корнишон = ноль;
пытаться {
gherkin = FixJava.readReader (new InputStreamReader (
новый FileInputStream (fPath), «UTF-8»));
} catch (FileNotFoundException e) {
System.out.println («Файл компонента не найден»);
// e.printStackTrace ();
} catch (UnsupportedEncodingException e) {
e.printStackTrace ();
} catch (RuntimeException e) {
e.printStackTrace ();
}
StringBuilder json = new StringBuilder ();
JSONFormatter formatter;
// симпатичный или некрасивый выбор, симпатичный по умолчанию
if (format.equalsIgnoreCase («некрасиво»)) {
formatter = new JSONFormatter (json); // не очень
} еще {
formatter = new JSONPrettyFormatter (json); // довольно
}
Parser parser = новый Parser (форматер);
parser.parse (корнишон, fPath, 0);
formatter.done ();
formatter.close ();
System.out.println («вывод json: n» + json + «'»);
// Окончательно очистить и закрыть
пытаться {
FileWriter file = новый FileWriter (jPath);
file.write (json.toString ());
file.flush ();
file.close ();
} catch (IOException e) {
e.printStackTrace ();
}
long endTime = System.currentTimeMillis ();
//необязательный
System.out.println («n Общее время работы:» + (endTime - startTime)
+ «Миллисекунды»);
}
}
Это предоставляет вам симпатичный или уродливый формат JSON, который вы можете выбрать из основного класса. Вы можете определить путь к файлу как для файла объектов для чтения, так и для файла JSON для записи с возможностью выбора красивого или безобразного выходного формата.