Gurkin er det almindelige engelske format, der kan forstå agurk for at køre automatiseringstesten. Gherkins funktion filsprog er business læses domæne specifikke sprog.
Denne kode er at konvertere din Gherkin funktion fil til JSON format baseret på JSON Formatter ramme.
Gurkin til JSON Parser Main
// Gherkin feature fil til JSON konverterede hovedklasse
offentlig klasse GToJRun {
// Her indstille Gurkin-stien til at hente funktionsfil og JSON-filsti til
// skriv i JSON format
privat statisk String featurePath = "c: \ Json \ login.feature";
privat statisk String jasonPath = "c: \ Json \ login.json";
// Sæt som smukt / grimt format til til JSON output. Som standard er det smukt
statisk GtoJCore testG = ny GtoJCore ("pretty");
offentlig statisk tomrum hoved (String [] args) {
testG.gherkinTojson (featurePath, jasonPath);
}
}
Kerneklassen er baseret på JSON formateringsrammer. Du kan få konverteringstid, hvis du vil kontrollere den samlede behandlingstid for en større funktionsfil.
Gurkin til JSON Parser Core
importer java.io.FileInputStream;
importer java.io.FileNotFoundException;
importer java.io.FileWriter;
importer java.io.IOException;
importer java.io.InputStreamReader;
importer java.io.UnsupportedEncodingException;
importere gherkin.formatter.JSONFormatter;
importere gherkin.formatter.JSONPrettyFormatter;
importere gherkin.parser.Parser;
importere gherkin.util.FixJava;
// Gherkin til Json parser kernen fil.
offentlig klasse GtoJCore {
private strengformat;
// For at få den samlede driftstid (valgfrit)
lang startTime = System.currentTimeMillis ();
offentlig GtoJCore (String outFormat) {
this.format = outFormat;
}
offentlig String getOutFormat () {
returformat;
}
offentlig ugyldig gherkinTojson (String fPath, String jPath) {
// Definer Feature File og JSON File path.
Stringgurk = null;
prøve {
gherkin = FixJava.readReader (ny InputStreamReader (
ny FileInputStream (fPath), "UTF-8"));
} fangst (FileNotFoundException e) {
System.out.println ("Funktionsfil ikke fundet");
// e.printStackTrace ();
} catch (UnsupportedEncodingException e) {
e.printStackTrace ();
} fangst (RuntimeException e) {
e.printStackTrace ();
}
StringBuilder json = ny StringBuilder ();
JSONFormatter formatter;
// pænt eller grimt valg, temmelig som standard
hvis (format.equalsIgnoreCase ("grimt")) {
formatter = ny JSONFormatter (json); // ikke smuk
} ellers {
formatter = ny JSONPrettyFormatter (json); // pretty
}
Parser parser = ny Parser (formatter);
parser.parse (gherkin, fPath, 0);
formatter.done ();
formatter.close ();
System.out.println ("json output: n" + json + "'");
// Spyl og luk endelig
prøve {
FileWriter file = new FileWriter (jPath);
file.write (json.toString ());
file.flush ();
file.close ();
} fangst (IOException e) {
e.printStackTrace ();
}
long endTime = System.currentTimeMillis ();
//valgfri
System.out.println ("n Samlet løbstid:" + (endTime - startTime)
+ "Millisekunder");
}
}
Dette giver dig et smukt eller grimt JSON-format, som du kan vælge fra hovedklassen. Du kan definere filstien både for funktionen fil, der skal læses og JSON filen til at skrive med mulighed for at vælge smukke eller grimme output format.