Gherkin เป็นรูปแบบภาษาอังกฤษธรรมดาที่สามารถเข้าใจแตงกวาในการทดสอบระบบอัตโนมัติ ภาษาของไฟล์คุณลักษณะของ Gherkin เป็นภาษาเฉพาะของธุรกิจที่สามารถอ่านได้ของโดเมน
รหัสนี้คือการแปลงไฟล์คุณสมบัติ Gherkin ของคุณให้เป็นรูปแบบ JSON ตามกรอบการทำงานของ JSON Formatter
Gherkin ถึง JSON Parser Main
// ไฟล์คุณสมบัติ Gherkin เป็น JSON ที่แปลงคลาสหลัก
คลาสสาธารณะ GToJRun {
// ที่นี่ตั้งค่าเส้นทาง Gherkin เพื่อดึงข้อมูลคุณสมบัติไฟล์และเส้นทางไฟล์ JSON เป็น
// เขียนลงในรูปแบบ JSON
String คงที่ส่วนตัว featurePath =“ c: \ Json \ login.feature”;
String คงที่ส่วนตัว jasonPath =“ c: \ Json \ login.json”;
// ตั้งเป็นรูปแบบสวย / น่าเกลียดสำหรับเอาท์พุท JSON โดยค่าเริ่มต้นมันสวย
GtoJCore คงที่ testG = ใหม่ GtoJCore (“ สวย”);
โมฆะคงที่สาธารณะหลัก (String [] args) {
testG.gherkinTojson (featurePath, jasonPath);
}
}
ชั้นแกนจะขึ้นอยู่กับกรอบการจัดรูปแบบ JSON คุณสามารถรับเวลาแปลงหากคุณต้องการตรวจสอบเวลาการประมวลผลทั้งหมดสำหรับไฟล์คุณลักษณะที่ใหญ่กว่า
Gherkin กับ JSON Parser Core
นำเข้า java.io.FileInputStream;
นำเข้า java.io.FileNotFoundException;
นำเข้า java.io.FileWriter;
นำเข้า java.io.IOException;
นำเข้า java.io.InputStreamReader;
นำเข้า java.io.UnsupportedEncodingException;
นำเข้า gherkin.formatter.JSONFormatter;
นำเข้า gherkin.formatter.JSONPrettyFormatter;
นำเข้า gherkin.parser.Parser;
gherkin.util.FixJava นำเข้า
// Gherkin ไปยังไฟล์หลักของตัวแยกวิเคราะห์ Json
คลาสสาธารณะ GtoJCore {
รูปแบบสตริงส่วนตัว
// เพื่อรับเวลาทำงานทั้งหมด (ไม่บังคับ)
long startTime = System.currentTimeMillis ();
สาธารณะ GtoJCore (สตริง outFormat) {
this.format = outFormat;
}
ประชาชน String getOutFormat () {
รูปแบบการส่งคืน;
}
โมฆะสาธารณะ gherkinTojson (String fPath, String jPath) {
// กำหนดไฟล์คุณสมบัติและเส้นทางไฟล์ JSON
String gherkin = null;
ลอง {
gherkin = FixJava.readReader (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 = ใหม่ StringBuilder ();
ตัวจัดรูปแบบ JSONFormatter;
// การเลือกสวยหรือน่าเกลียดโดยค่าเริ่มต้น
if (format.equalsIgnoreCase (“ ugly”)) {
formatter = new JSONFormatter (json); // ไม่สวย
} อื่น {
formatter = new JSONPrettyFormatter (json); // pretty
}
Parser parser = ตัวแยกวิเคราะห์ใหม่ (ตัวจัดรูปแบบ);
parser.parse (gherkin, fPath, 0);
formatter.done ();
formatter.close ();
System.out.println (“ json เอาต์พุต: n” + json +“ '”);
// ในที่สุดก็ล้างออกและปิด
ลอง {
FileWriter file = new 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 เพื่อเขียนพร้อมตัวเลือกในการเลือกรูปแบบเอาต์พุตที่สวย