Ein hübscher Ansatz, um die Gherkin-Feature-Datei in JSON zu analysieren



Gurke ist das einfache englische Format, das Cucumber zur Ausführung des Automatisierungstests verstehen kann. Die Gherkin-Feature-Dateisprache ist eine für Unternehmen lesbare domänenspezifische Sprache.

Dieser Code dient zum Konvertieren Ihrer Gherkin-Funktionsdatei in das JSON-Format basierend auf dem JSON Formatter-Framework.

Gurke zu JSON Parser Main

// Gherkin-Feature-Datei in JSON-konvertierte Hauptklasse

öffentliche Klasse GToJRun {

// Hier legen Sie den Gherkin-Pfad fest, auf den die Feature-Datei und der JSON-Dateipfad abgerufen werden sollen

// in das JSON-Format schreiben

privater statischer String featurePath = "c: \ Json \ login.feature";

privater statischer String jasonPath = "c: \ Json \ login.json";

// Für die JSON-Ausgabe als hübsches / unschönes Format festlegen. Standardmäßig ist es hübsch

statischer GtoJCore testG = neuer GtoJCore ("hübsch");

public static void main (String [] args) {

testG.gherkinTojson (featurePath, jasonPath);

}

}

Die Kernklasse basiert auf dem JSON-Formatierungs-Framework. Sie können die Konvertierungszeit abrufen, wenn Sie die Gesamtverarbeitungszeit auf eine größere Feature-Datei überprüfen möchten.

Gurke zu JSON Parser Core

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.FileWriter;

java.io.IOException importieren;

import java.io.InputStreamReader;

import java.io.UnsupportedEncodingException;

import gherkin.formatter.JSONFormatter;

import gherkin.formatter.JSONPrettyFormatter;

import gherkin.parser.Parser;

import gherkin.util.FixJava;

// Gherkin in Json Parser-Kerndatei.

öffentliche Klasse GtoJCore {

privates String-Format;

// Um ​​die Gesamtlaufzeit abzurufen (optional)

long startTime = System.currentTimeMillis ();

public GtoJCore (String outFormat) {

this.format = outFormat;

}

public String getOutFormat () {

Rückgabeformat;

}

public void gherkinTojson (String fPath, String jPath) {

// Definiere die Feature-Datei und den JSON-Dateipfad.

Schnurgurke = null;

Versuchen {

gherkin = FixJava.readReader (neuer InputStreamReader (

new FileInputStream (fPath), "UTF-8")));

} catch (FileNotFoundException e) {

System.out.println ("Feature-Datei nicht gefunden");

// e.printStackTrace ();

} catch (UnsupportedEncodingException e) {

e.printStackTrace ();

} catch (RuntimeException e) {

e.printStackTrace ();

}

StringBuilder json = neuer StringBuilder ();

JSONFormatter-Formatierer;

// hübsche oder hässliche Auswahl, standardmäßig hübsch

if (format.equalsIgnoreCase ("hässlich")) {

formatter = new JSONFormatter (json); // nicht hübsch

} else {

formatter = new JSONPrettyFormatter (json); // ziemlich

}

Parser Parser = neuer Parser (Formatierer);

parser.parse (Gurke, fPath, 0);

formatter.done ();

formatter.close ();

System.out.println ("json-Ausgabe: n" + json + "'");

// Zum Schluss spülen und schließen

Versuchen {

FileWriter-Datei = neuer FileWriter (jPath);

file.write (json.toString ());

file.flush ();

file.close ();

} catch (IOException e) {

e.printStackTrace ();

}

long endTime = System.currentTimeMillis ();

//wahlweise

System.out.println ("n Gesamtlaufzeit:" + (endTime - startTime)

+ ”Millisekunden”);

}

}

Dies bietet Ihnen ein hübsches oder hässliches JSON-Format, das Sie aus der Hauptklasse auswählen können. Sie können den Dateipfad sowohl für die zu lesende Feature-Datei als auch für die zu schreibende JSON-Datei mit der Option zum Auswählen eines ziemlich oder hässlichen Ausgabeformats definieren.

Vorherige Artikel

So beschleunigen Sie den Google Chrome-Browser auf dem PC

So beschleunigen Sie den Google Chrome-Browser auf dem PC

Google Chrome ist ein funktionsreicher Browser mit einer einfachen Benutzeroberfläche. Dieser Browser von Google enthält auch Erweiterungen und Designs, mit denen Sie das Surferlebnis personalisieren und die Funktionen erweitern können. Bei der Auswahl des Browsers legen wir größten Wert auf Sicherheit und Geschwindigkeit. Goo...

Nächster Artikel

7 Beste AR-Apps für iPhone und iPad

7 Beste AR-Apps für iPhone und iPad

Mit der Veröffentlichung von iOS 11 konnte die Apple-Software die zugrunde liegende Hardware effizienter nutzen. In iOS 12 ist es einfach besser geworden. Apple kann jetzt mit der Unterstützung von AR-Apps das volle Potenzial der installierten Hardware voll ausschöpfen. Damit nutzen Entwickler auf der ganzen Welt ARKit, um Virtual-Reality-Apps und AR-Spiele für iOS zu erstellen. iO...