टेस्टएनजी में असफल टेस्ट मामलों को कैसे निष्पादित करें: सेलेनियम वेबड्राइवर

विषय - सूची:

Anonim

इस ट्यूटोरियल में, आप सीखेंगे-

  • एक सेलेनियम प्रोजेक्ट बनाएं
  • सेलेनियम प्रोजेक्ट को TestNG में कन्वर्ट और एक्साइट करें
  • कमांड लाइन के माध्यम से TestNG निष्पादित करें
  • केवल असफल परीक्षण मामलों को कैसे चलाया जाए
  • कमांड लाइन से testng-fail.xml फ़ाइल चलाना

एक सेलेनियम प्रोजेक्ट बनाएं

प्रोजेक्ट तैयार करें

चरण 1) ग्रहण में, नए जावा प्रोजेक्ट पर क्लिक करके जावा प्रोजेक्ट बनाएं

चरण 2) इस चरण में,

  1. प्रोजेक्ट का नाम दें
  2. निष्पादन वातावरण चुनें
  3. प्रोजेक्ट लेआउट विकल्प चुनें
  4. "समाप्त" बटन पर क्लिक करें।

जब आप फिनिश बटन पर क्लिक करेंगे। "TestProject" जावा प्रोजेक्ट बनाया गया है। "TestProject" इस तरह दिखेगा।

चरण 3) उस नई बनाई गई परियोजना को खोलें। आप पैकेज एक्सप्लोरर में "src" फ़ोल्डर देख पाएंगे।

  1. राइट क्लिक प्रोजेक्ट और "नया" चुनें
  2. विकल्प पैकेज चुनें

चरण 4) इस चरण में,

  1. Src फ़ोल्डर ब्राउज़ करें और पैकेज चुनें
  2. पैकेज का नाम दें और
  3. आखिर में फिनिश बटन पर क्लिक करें। (पैकेज का नाम-> com.test)

"खत्म" पर क्लिक करने के बाद परियोजना की संरचना इस तरह दिखाई देगी:

चरण 5) इस चरण में,

  1. अब, नए बनाए गए पैकेज पर राइट क्लिक करें और
  2. विकल्प का चयन करें "वर्ग।"

एक नयी विंडो खुलेगी।

चरण 6) इस चरण में,

  1. "वर्ग" नाम दें
  2. संशोधक चुनें
  3. ब्राउज़ करें और सुपरक्लास java.lang.object चुनें
  4. फिनिश बटन पर क्लिक करें।

यहां, आप दो कक्षाएं पूर्व बना रहे हैं: डेमोए, डेमोबी

फर्स्ट क्लास डेमो बनाएं।

जब आप "समाप्त" बटन पर क्लिक करते हैं। तो यह इस तरह वर्ग बनाने जा रहा है:

इसी तरह, क्लास डीएफ़बी बनाएँ, जब आप "फिनिश" बटन पर क्लिक करेंगे तो नीचे की तरह दिखेगा क्लास-

चरण 7) यदि आपने TestNG लाइब्रेरी स्थापित की है, तो केवल Java प्रोजेक्ट ---> गुण पर क्लिक करें।

चरण 8) अब गुण विंडो में,

  1. Java Build Path पर क्लिक करें
  2. पुस्तकालयों पर क्लिक करें
  3. Add Library पर क्लिक करें।

अगला

  1. "TestNg" पर क्लिक करें और फिर
  2. "अगला" पर क्लिक करें।

फिर "फिनिश" बटन पर क्लिक करें।

इसके बाद, निम्न कोड लिखें।

क्लास डेमो के लिए

कोड स्पष्टीकरण:

  • Driver.manage ()। Window ()। मैक्सिमम ();

यह लाइन ब्राउज़र विंडो को अधिकतम करने वाली है।

  • Driver.get (https://www.google.co.in);

यह पंक्ति URL फ़ील्ड में निर्दिष्ट URL दर्ज करेगी।

  • Driver.findElement (By.name ("q")। sendKeys ("Hi");

यह पंक्ति "Google" खोज बॉक्स को पहचानने और आपके द्वारा भेजे गए डेटा को सेंड करने की विधि का उपयोग करके दर्ज करने वाली है।

आउटपुट: उपरोक्त कार्यक्रम में त्रुटियां हैं, इसलिए इसे निष्पादित करना संभव नहीं है।

इसी तरह क्लास डेमोबी के लिए,

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

चरण 8) संपत्ति विंडो में,

  1. बाएं नेविगेशन फलक पर जावा बिल्ड पथ पर क्लिक करें।
  2. लाइब्रेरी टैब पर क्लिक करें,
  3. Add External JAR पर क्लिक करें और सेलेनियम-स्टैंडअलोन जार फ़ाइल चुनें
  4. "ओके" बटन पर क्लिक करें।

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

@Test के लिए यदि यह अभी भी त्रुटियाँ दिखा रहा है, तो माउस को वहाँ रखें। यह संभावित विकल्प दिखाएगा। इसके बाद add TestNG Library ऑप्शन पर क्लिक करें। इसी प्रकार अन्य 'वर्ग' के लिए भी करें।

दोनों वर्गों अर्थात डेमोए के अंदर अपना कोड लिखने के बाद, डेमोबी अगले चरण पर जाता है।

चरण 9) इस चरण में,

  1. प्रोजेक्ट पर राइट-क्लिक करें और
  2. 'Lib' नामक फ़ोल्डर बनाने के लिए विकल्प फ़ोल्डर का चयन करें और testNG जार फ़ाइल और सेलेनियम जार फ़ाइल (सेलेनियम-सर्वर-स्टैंडअलोन <संस्करण>) पेस्ट करें।

    (Testng और सेलेनियम-सर्वर-स्टैंडअलोन जार फ़ाइल को वेब से डाउनलोड करने और इसे आपके सिस्टम के अंदर संग्रहीत करने की आवश्यकता है। आपको मैन्युअल रूप से उस फ़ोल्डर में जाने की आवश्यकता है और इन दो जार को कॉपी करें और ग्रहण में मौजूद 'lib' फ़ोल्डर पर राइट क्लिक करें और क्लिक करें। पेस्ट)

चरण 10) इस चरण में,

1. मूल फ़ोल्डर का चयन करें

2. फोल्डर को 'लीब' के रूप में नाम दें और (इन दोनों जार फाइलों को लिब फोल्डर में जोड़ने का प्राथमिक उद्देश्य यह है कि कमांड प्रॉम्प्ट से निष्पादित करते समय आप संकलक को बता सकते हैं कि प्रोग्राम के निष्पादन के लिए आवश्यक जार फाइलें इस स्थान पर मौजूद हैं। यदि आप ग्रहण से testng.xml निष्पादित करना चाहते हैं, तो यह आवश्यक फ़ोल्डर आवश्यक नहीं है)

3. 'फिनिश' बटन पर क्लिक करें

Testng और सेलेनियम-सर्वर-स्टैंडअलोन जार फ़ाइल को वेब से डाउनलोड करने और इसे आपके सिस्टम के अंदर संग्रहीत करने की आवश्यकता है। आपको मैन्युअल रूप से उस फ़ोल्डर में जाने की आवश्यकता है और इन दो जार को कॉपी करें और ग्रहण में मौजूद 'लिबर' फ़ोल्डर पर राइट क्लिक करें और पेस्ट पर क्लिक करें

एक फ़ोल्डर बनाने के बाद, अगला चरण हमारे कार्यक्रमों को परिवर्तित करेगा जो कि डेमो और डेमोबी हैं Testng.xml फ़ाइल में।

सेलेनियम प्रोजेक्ट को TestNG में कन्वर्ट और एक्साइट करें

चरण 1) इस चरण में,

  1. पैकेज के नीचे मौजूद दो जावा फाइलों का चयन करें और राइट क्लिक करें।
  2. "TestNG" नामक विकल्प का चयन करें।
  3. कन्वर्ट पर क्लिक करें "testNG"।

चरण 2) एक नई विंडो खुल जाएगी। इस विंडो में, विवरण दर्ज करें

  1. स्थान
  2. सुइट का नाम
  3. परीक्षण का नाम
  4. कक्षा चयन
  5. समानांतर मोड
  6. "समाप्त" बटन पर क्लिक करें

तब जावा प्रोजेक्ट के तहत बनाई गई testng.xml फ़ाइल, और यह इस तरह दिखेगा।

(यदि आप उस testng.xml फ़ाइल को चलाना चाहते हैं तो पैकेज एक्सप्लोरर में बाएँ नेविगेशन फलक पर मौजूद testng.xml फ़ाइल पर राइट क्लिक करें और TestNG Suite के रूप में रन पर क्लिक करें।)

चरण 3) testng.xml सुइट फ़ाइल इस तरह दिखाई देगी:

यदि आप पहले डेमोए क्लास को निष्पादित करना चाहते हैं, तो उस पूरी लाइन को हटा दें और इसे इस तरह से डेमोबी क्लास से पहले जोड़ें:

चरण 4) testng.xml फ़ाइल निष्पादित करने के बाद, यह निम्नलिखित तरीके से परिणाम प्रदर्शित करेगा। (चूंकि आपने System.out.println () का उपयोग करके कोई निष्पादन योग्य कथन नहीं लिखा है, इसलिए यह कंसोल विंडो पर कुछ भी नहीं छाप रहा है)।

यह उन तरीकों में से एक है जो आप ग्रहण के माध्यम से परीक्षण करेंगे, यदि आप एक ही testng.xml सूट फ़ाइल निष्पादित करना चाहते हैं, जिसमें दो क्लास फ़ाइल जैसे डेमोए, डेमोबी कमांड प्रॉम्प्ट से आपको नीचे दिए चरणों का पालन करने की आवश्यकता है।

अब कमांड प्रॉम्प्ट खोलें और प्रोजेक्ट कार्यक्षेत्र पर जाएं।

कमांड लाइन के माध्यम से TestNG निष्पादित करें

आपको प्रोजेक्ट स्पेस का स्थान खोजने की आवश्यकता है

चरण 1) सबसे पहले जावा प्रोजेक्ट पर राइट क्लिक करें और गुण विकल्प चुनें। गुण विंडो में विकल्प संसाधन का चयन करें।

चरण 2) अब जब आप "संसाधन" लिंक पर क्लिक करते हैं, तो बाएं नेविगेशन फलक में मौजूद है। यह दिखाएगा कि वास्तव में प्रोजेक्ट कहाँ संग्रहीत है

प्रोजेक्ट कार्यक्षेत्र C: \ Users \ User \ Desktop \ Guru99 \ TestProject है । इसलिए आप उस विशेष स्थान पर निर्देशिका बदल रहे हैं।

स्टेप 3) फिर निम्न कमांड टाइप करें। (यह कमांड सामान्य कमांड है)

java -cp "कार्यक्षेत्र में मौजूद lib फ़ोल्डर का पथ \ *, प्रोजेक्ट कार्यस्थान में मौजूद बिन फ़ोल्डर का पथ; प्रोजेक्ट कार्यस्थान के lib फ़ोल्डर में testng.jar फ़ाइल का पथ" org.testng.TestNG testng.xml

लेकिन हमारी परियोजना के लिए आपको निम्नलिखित कमांड लिखने की आवश्यकता है।

Java -cp "C: \ Users \ User \ Desktop \ Guru99 \ TestProject \ lib \ *;C: \ Users \ User \ Desktop \ Guru99 \ TestProject \ bin "org.testng.TestNG testng.xml

स्टेप 4) फिर एंटर दबाएं। दोनों कक्षाएं डेमो और डेमोबी अपने निष्पादन की शुरुआत करेंगे। अंत में, यह कमांड प्रॉम्प्ट पर परिणाम प्रदर्शित करेगा।

केवल असफल परीक्षण मामलों को कैसे चलाया जाए

यदि आप ग्रहण के माध्यम से केवल असफल परीक्षण मामलों को निष्पादित करना चाहते हैं, तो पहले परियोजना को ताज़ा करें।

चरण 1) जावा परियोजना (डेमो ए और बी) पर राइट क्लिक करें। रिफ्रेश विकल्प का चयन करें या बस जावा प्रोजेक्ट चुनें और F5 दबाएं।

चरण 2) तब आप परीक्षण-आउटपुट फ़ोल्डर देख पाएंगे। उस फ़ोल्डर में, आपके पास नाम testng-fail.xml के साथ एक फ़ाइल है।

चरण 3) इस फ़ाइल पर राइट-क्लिक करें और रन के रूप में क्लिक करें और "testNG सूट" नामक विकल्प चुनें।

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

कमांड लाइन से testng-fail.xml फ़ाइल चलाना

चरण 1) कमांड प्रॉम्प्ट में विफल परीक्षण मामलों को चलाने के लिए। कमांड प्रॉम्प्ट खोलें और प्रोजेक्ट कार्यस्थान पर जाएं।

मेरा प्रोजेक्ट कार्यक्षेत्र C: \ Users \ User \ Desktop \ Guru99 \ TestProject है । तो आप उस विशेष स्थान पर निर्देशिका बदल रहे होंगे।

चरण 2) निम्न कमांड टाइप करें। (यह कमांड सामान्य कमांड है)

java -cp "कार्यक्षेत्र में मौजूद lib फ़ोल्डर का पथ" *, प्रोजेक्ट वर्कस्पेस में मौजूद बिन फ़ोल्डर का पथ; प्रोजेक्ट कार्यस्थान के lib फ़ोल्डर में मौजूद test.jar फ़ाइल का पथ "org.testng.TestNG परीक्षण-आउटपुट / testng- विफल। एक्सएमएल

हमारे प्रोजेक्ट के लिए, आपको निम्नलिखित कमांड लिखना होगा।

Java -cp "C: \ Users \ User \ Desktop \ Guru99 \ TestProject \ lib \ *;C: \ Users \ User \ Desktop \ Guru99 \ TestProject \ bin

स्टेप 3) फिर एंटर दबाएं। यह केवल असफल कक्षाओं को चलाने वाला है और प्रदर्शन केवल उस वर्ग से मेल खाता है।

उपरोक्त श्रेणी में अर्थात डेमोबी सिर्फ कोड को इस तरह बदलता है।

Driver.findElement (By.name ("a")। sendKeys ("बाय"); 

उपरोक्त कोड किसी भी तत्व को खोजने वाला नहीं है। तो, यह अपवाद को फेंक देगा। लेकिन हमारे कार्यक्रम में, आप अपवाद को नहीं संभाल रहे हैं, इसलिए हमारा कार्यक्रम शेष कोड को निष्पादित करना बंद कर देगा। इस वजह से क्लासबी फेल हो जाएगा।

सारांश :

  • TestNG ऑटोमेशन टेस्टिंग फ्रेमवर्क है जो जूनिट से प्रेरित है और इसमें विभिन्न एनोटेशन शामिल हैं।
  • TestNG अपनी मानक रिपोर्ट में रिपोर्ट तैयार करता है, जिसमें निम्नलिखित चीजें हैं:
    • कितने परीक्षण मामले हैं?
    • कितने परीक्षण मामले पारित किए जाते हैं?
    • कितने परीक्षण मामलों में विफल रहे हैं?
    • कितने परीक्षण मामलों को छोड़ दिया जाता है?
  • कई परीक्षण मामलों को आसानी से वर्गीकृत किया जा सकता है और परीक्षण कक्षाओं को परीक्षण सूट फ़ाइल में परिवर्तित करके उन्हें निष्पादित किया जा सकता है।
  • TestNG को अन्य तृतीय-पक्ष टूल के साथ आसानी से एकीकृत किया जा सकता है। यह परीक्षण मामलों को प्राथमिकता प्रदान करने, एक ही परीक्षण मामले के निष्पादन को कई बार मंगलाचरण का उपयोग करके अलग-अलग सुविधाएँ प्रदान करता है।
  • यदि कई परीक्षण मामलों को निष्पादित करते समय कोई भी टेस्ट केस विफल हो जाता है, तो आप उस विशिष्ट टेस्ट केस को अलग से निष्पादित कर सकते हैं।
  • रिपोर्टर वर्ग की स्थैतिक विधि "लॉग" का उपयोग लॉगिंग जानकारी को संग्रहीत करने के लिए किया जा सकता है जो कि org.testng में मौजूद है

इस लेख का योगदान संदीप बाटागेरी द्वारा दिया गया है