TestNG - मूल व्याख्याएँ
जुनेट 3 में परीक्षण विधियों को इंगित करने का पारंपरिक तरीका उनके नामों को परीक्षण के साथ उपसर्ग करना है। यह एक विशेष अर्थ के रूप में एक वर्ग में कुछ तरीकों को टैग करने के लिए एक बहुत प्रभावी तरीका है, लेकिन नामकरण बहुत अच्छी तरह से पैमाने पर नहीं है (क्या होगा अगर हम विभिन्न रूपरेखाओं के लिए अधिक टैग जोड़ना चाहते हैं?) और बल्कि अनम्य है (क्या होगा यदि हम? परीक्षण ढांचे में अतिरिक्त मापदंडों को पारित करना चाहते हैं?)।
जेडीके 5 में जावा भाषा में एनोटेशन को औपचारिक रूप से जोड़ा गया था, और टेस्टएनजी ने टेस्ट कक्षाओं को एनोटेट करने के लिए एनोटेशन का उपयोग करने का विकल्प बनाया।
यहां उन टिप्पणियों की सूची दी गई है जो TestNG का समर्थन करती हैं -
अनु क्रमांक। | एनोटेशन और विवरण |
---|---|
1 | @BeforeSuite एनोटेट पद्धति को केवल एक बार चलाया जाएगा, इससे पहले कि इस सूट में सभी परीक्षण चलें। |
2 | @AfterSuite एनोटेट पद्धति केवल इस सूट में सभी परीक्षणों के चलने के बाद ही चलाई जाएगी। |
3 | @BeforeClass एनोटेट विधि वर्तमान वर्ग में पहली परीक्षा विधि लागू होने से पहले केवल एक बार चलाई जाएगी। |
4 | @AfterClass वर्तमान वर्ग में सभी परीक्षण विधियों के चलने के बाद ही एनोटेट पद्धति केवल एक बार चलाई जाएगी। |
5 | @BeforeTest एनोटेट विधि को <परीक्षण> टैग के अंदर कक्षाओं से संबंधित किसी भी परीक्षण विधि से पहले चलाया जाएगा। |
6 | @AfterTest एनोटेट पद्धति को सभी परीक्षण विधियों से संबंधित परीक्षण विधियों के अंदर चलाया जाएगा <परीक्षण> टैग चला गया है। |
7 | @BeforeGroups समूहों की सूची जो इस विन्यास विधि से पहले चलेगी। इस पद्धति को गारंटी दी जाती है कि इन समूहों में से किसी एक के पहले परीक्षण विधि से पहले ही इसे चलाया जाए। |
8 | @AfterGroups समूहों की सूची जो इस कॉन्फ़िगरेशन विधि के बाद चलेगी। इस पद्धति को अंतिम परीक्षण विधि के तुरंत बाद चलाने की गारंटी दी जाती है, जो इनमें से किसी भी समूह से संबंधित है। |
9 | @BeforeMethod एनोटेट विधि प्रत्येक परीक्षण विधि से पहले चलाई जाएगी। |
10 | @AfterMethod एनोटेट विधि प्रत्येक परीक्षण विधि के बाद चलाई जाएगी। |
1 1 | @DataProvider परीक्षण विधि के लिए डेटा की आपूर्ति के रूप में एक विधि को चिह्नित करता है। एनोटेट विधि को एक वस्तु [] [] को वापस करना चाहिए, जहां प्रत्येक वस्तु [] को परीक्षण विधि की पैरामीटर सूची सौंपी जा सकती है। इस डेटाप्रोवाइडर से डेटा प्राप्त करने की इच्छा रखने वाली @Test विधि को इस एनोटेशन के नाम के बराबर डेटाप्रोवाइडर नाम का उपयोग करने की आवश्यकता है। |
12 | @Factory
एक कारखाने के रूप में एक विधि को चिह्नित करता है जो वस्तुओं को लौटाता है जो TestNG द्वारा टेस्ट कक्षाओं के रूप में उपयोग किया जाएगा। विधि को ऑब्जेक्ट वापस करना चाहिए []। |
13 | @Listeners एक परीक्षण वर्ग पर श्रोताओं को परिभाषित करता है। |
14 | @Parameters यह बताता है कि कैसे एक @Test विधि में मापदंडों को पारित किया जाए। |
15 | @Test परीक्षण के एक भाग के रूप में एक वर्ग या एक विधि को चिह्नित करता है। |
एनोटेशन का उपयोग करने के लाभ
एनोटेशन का उपयोग करने के कुछ लाभ निम्नलिखित हैं -
TestNG एनोटेशन को देख कर, इसमें रुचि रखने वाले तरीकों की पहचान करता है। इसलिए, विधि के नाम किसी भी पैटर्न या प्रारूप तक सीमित नहीं हैं।
हम एनोटेशन के लिए अतिरिक्त पैरामीटर पास कर सकते हैं।
एनोटेशन दृढ़ता से टाइप किया जाता है, इसलिए कंपाइलर तुरंत किसी भी गलती को चिह्नित करेगा।
टेस्ट क्लासेस को अब कुछ भी विस्तारित करने की आवश्यकता नहीं है (जैसे कि TestCase, JUnit 3 के लिए)।