जेन्सन को पार्स गेरकिन फ़ीचर फ़ाइल के लिए एक सुंदर दृष्टिकोण



गेरकिन सादे अंग्रेजी प्रारूप है जो स्वचालन परीक्षण को चलाने के लिए ककड़ी को समझ सकता है। Gherkin फ़ीचर फ़ाइल भाषा व्यावसायिक पठनीय डोमेन विशिष्ट भाषा है।

यह कोड आपकी Gherkin फीचर फाइल को JSON फॉर्मेट फ्रेमवर्क के आधार पर JSON फॉर्मेट में बदलने के लिए है।

जेरसन पार्सर मुख्य के लिए गेरकिन

// जेरसन की मुख्य फ़ाइल को मुख्य वर्ग में बदल दिया

सार्वजनिक वर्ग GToJRun {

// यहाँ सुविधा फ़ाइल और JSON फ़ाइल पथ लाने के लिए Gherkin पथ सेट करें

// JSON प्रारूप में लिखें

निजी स्थिर स्ट्रिंग फ़ीचरपैथ = "c: \ Json \ login.feature";

निजी स्थिर स्ट्रिंग jasonPath = "c: \ Json \ login.json";

// JSON आउटपुट के लिए सुंदर / बदसूरत प्रारूप के रूप में सेट करें। डिफ़ॉल्ट रूप से यह सुंदर है

स्थिर GtoJCore testG = नया GtoJCore ("सुंदर");

सार्वजनिक स्थैतिक शून्य main (String [] args) {

testG.gherkinTojson (featurePath, jasonPath);

}

}

कोर क्लास JSON फॉर्मैटर फ्रेमवर्क पर आधारित है। यदि आप किसी बड़ी सुविधा फ़ाइल के लिए कुल संसाधन समय की जाँच करना चाहते हैं, तो आप परिवर्तित समय प्राप्त कर सकते हैं।

जेरसन पार्सर कोर को गेरकिन

आयात 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.ixJava;

// जेरसन पार्सन कोर फाइल के लिए जेरकिन।

सार्वजनिक वर्ग GtoJCore {

निजी स्ट्रिंग प्रारूप;

// कुल चलने का समय पाने के लिए (वैकल्पिक)

लॉन्ग स्टार्टटाइम = System.currentTimeMillis ();

सार्वजनिक GtoJCore (स्ट्रिंग आउटफ़ॉर्मैट) {

this.format = outFormat;

}

सार्वजनिक स्ट्रिंग getOutFormat () {

वापसी प्रारूप;

}

सार्वजनिक शून्य gherkinTojson (स्ट्रिंग fPath, स्ट्रिंग jPath) {

// फ़ीचर फ़ाइल और JSON फ़ाइल पथ को परिभाषित करें।

स्ट्रिंग गेरकिन = अशक्त;

प्रयत्न {

gherkin = FixJava.readReader (नया InputStreamReader (

नई FileInputStream (fPath), "UTF-8"));

} कैच (FileNotFoundException e) {

System.out.println ("फ़ीचर फ़ाइल नहीं मिली");

// e.printStackTrace ();

} कैच (UnsupportedEncodingException e) {

e.printStackTrace ();

} कैच (RuntimeException e) {

e.printStackTrace ();

}

StringBuilder json = नया StringBuilder ();

JSONFormatter formatter;

// सुंदर या बदसूरत चयन, डिफ़ॉल्ट रूप से सुंदर

अगर (format.equalsIgnoreCase ("बदसूरत")) {

formatter = नया JSONFormatter (json); // सुंदर नहीं

} अन्य {

formatter = नया JSONPrettyFormatter (json); // सुंदर

}

पार्सर पार्सर = नया पार्सर (फॉर्मेटर);

parser.parse (gherkin, fPath, 0);

formatter.done ();

formatter.close ();

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

// अंत में फ्लश और करीब

प्रयत्न {

FileWriter फ़ाइल = नया FileWriter (jPath);

file.write (json.toString ());

file.flush ();

file.close ();

} कैच (IOException e) {

e.printStackTrace ();

}

लंबी एंडटाइम = System.currentTimeMillis ();

// वैकल्पिक

System.out.println ("एन टोटल रनिंग टाइम:" + (एंडटाइम - स्टार्टटाइम)

+ "मिलीसेकंड");

}

}

यह आपको एक सुंदर या बदसूरत JSON प्रारूप प्रदान करता है जिसे आप मुख्य वर्ग से चुन सकते हैं। आप पढ़ने के लिए फीचर फाइल के लिए फ़ाइल पथ को परिभाषित कर सकते हैं और JSON फ़ाइल को सुंदर या बदसूरत आउटपुट स्वरूप का चयन करने के विकल्प के साथ लिख सकते हैं।

पिछला लेख

कैसे iPhone और Android फोन के साथ लाइव स्थान साझा करने के लिए।

कैसे iPhone और Android फोन के साथ लाइव स्थान साझा करने के लिए।

Google मानचित्र और फेसबुक मैसेंजर ने हाल ही में एक स्मार्टफोन का उपयोग करके वास्तविक समय में स्थान साझा करने की सुविधा शुरू की है। जब आप लाइव साझा करने की सुविधा के साथ स्थान साझा करते हैं, तो हमारा मित्र आपको वास्तविक समय में ट्रैक कर सकता है और वास्तविक समय में मानचित्र पर आपके आंदोलन को देख सकता है। आप पूर्व निर्धारित समय के बाद किसी भी समय या स्वचालित रूप से इस साझाकरण को रोक सकते हैं। लाइव शेयर सुविधा आपके ईटीए को अपने मित्र के साथ साझा करने, सामाजिक मेलजोल के लिए समन्वय करने, आदि के लिए उपयोगी है। यह लाइव साझाकरण सुविधा अतिरिक्त सुरक्षा है जो आपको अपरिचित स्थान पर ड्राइविंग करते समय वर्तम...

अगला लेख

एंड्रॉइड डिवाइस के लिए मैन्युअल आईपी सेटिंग्स कैसे करें

एंड्रॉइड डिवाइस के लिए मैन्युअल आईपी सेटिंग्स कैसे करें

आपके एंड्रॉइड फोन या टैबलेट का वायरलेस कनेक्शन सामान्य परिस्थितियों में स्वचालित रूप से वायरलेस एक्सेस प्वाइंट या राउटर से जुड़ जाएगा। ऐसे मामलों में, आईपी सेटिंग्स को आपके वायरलेस कनेक्शन के सेटअप चरण के दौरान राउटर द्वारा सौंपा जाएगा। हर बार जब आप वायरलेस नेटवर्क से कनेक्ट हो रहे हों, तो आईपी एड्रेस अलग-अलग होंगे। कुछ मामलों में, आप एक स्थिर आईपी सेटिंग से जुड़ने के लिए डिफ़ॉल्ट आईपी सेटिंग्स को बदलना चाहते हैं या आप उस आईपी पते के विवरण को देखना चाहते हैं जो वर्तमान में जुड़ा हुआ है। हम Android फोन या टैबलेट की आईपी सेटिंग्स को बहुत आसानी से देख सकते हैं और यदि आवश्यक हो तो निम्न प्रक्रिया द...