Gherkin هو التنسيق الإنجليزي البسيط الذي يمكنه فهم الخيار لتشغيل اختبار الأتمتة. لغة ملف ميزة Gherkin هي لغة مخصصة للنطاق التجاري.
يهدف هذا الرمز إلى تحويل ملف ميزة Gherkin الخاص بك إلى تنسيق JSON استنادًا إلى إطار عمل تنسيق JSON.
غيركين إلى JSON Parser Main
// ملف ميزة Gherkin إلى JSON تم تحويل الفئة الرئيسية
الفئة العامة GToJRun {
// هنا قم بتعيين مسار Gherkin لجلب ملف الميزة ومسار ملف JSON إلى
// الكتابة في شكل JSON
static String featurePath = "c: \ Json \ login.feature"؛
static String jasonPath = "c: \ Json \ login.json"؛
/ / تعيين تنسيق جميل / قبيح لإخراج JSON. افتراضيا انها جميلة
ثابت GtoJCore testG = جديد GtoJCore ("جميل") ؛
ثابت الفراغ الثابت الرئيسي (سلسلة [] الحجج) {
testG.gherkinTojson (featurePath، jasonPath)؛
}
}
تعتمد الفئة الأساسية على إطار المنسق JSON. يمكنك الحصول على وقت التحويل إذا كنت تريد التحقق من إجمالي وقت المعالجة لملف ميزة أكبر.
غيركين إلى JSON Parser Core
استيراد java.io.FileInputStream ؛
استيراد java.io.FileNotFoundException؛
استيراد java.io.FileWriter ؛
استيراد java.io.IOException ؛
استيراد java.io.InputStreamReader ؛
استيراد java.io.UnupportedEncodingException؛
استيراد gherkin.formatter.JSONFormatter ؛
استيراد gherkin.formatter.JSONPrettyFormatter ؛
استيراد gherkin.parser.Parser ؛
استيراد gherkin.util.FixJava ؛
// غيركين لمحلل ملف Json الأساسي.
الطبقة العامة GtoJCore {
شكل سلسلة خاصة.
// للحصول على إجمالي وقت التشغيل (اختياري)
startTime طويلة = System.currentTimeMillis () ؛
GtoJCore العامة (String outFormat) {
this.format = outFormat؛
}
سلسلة getOutFormat العامة () {
شكل العودة ؛
}
gherkinTojson public void (String fPath، String jPath) {
// تعريف ملف الميزة ومسار ملف JSON.
سلسلة gherkin = فارغة.
محاولة {
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")) {
المنسق = JSONFormatter الجديد (json) ؛ // ليست جميلة
} آخر {
المنسق = جديد JSONPrettyFormatter (json) ؛ // جميل
}
المحلل اللغوي = المحلل اللغوي الجديد (المنسق) ؛
parser.parse (gherkin، fPath، 0)؛
formatter.done ()؛
formatter.close ()؛
System.out.println ("json output: n" + json + "'")؛
// أخيرًا أغلق وأغلق
محاولة {
FileWriter file = new FileWriter (jPath) ؛
file.write (json.toString ())؛
file.flush ()؛
file.close ()؛
} catch (IOException e) {
e.printStackTrace ()؛
}
وقت طويل = System.currentTimeMillis () ؛
//اختياري
System.out.println ("n إجمالي وقت التشغيل:" + (endTime - startTime)
+ "ميلي ثانية") ؛
}
}
يوفر لك هذا تنسيق JSON جميلًا أو قبيحًا يمكنك اختياره من الفئة الرئيسية. يمكنك تحديد مسار الملف لكل من ملف الميزة لقراءة وملف JSON للكتابة مع خيار تحديد تنسيق الإخراج الجميل أو القبيح.