introduction junit framework
यह ट्यूटोरियल JUnit और सेलेनियम लिपि में इसके उपयोग के बारे में जानकारी देगा। यह हमारे में ट्यूटोरियल # 11 है व्यापक सेलेनियम ट्यूटोरियल श्रृंखला।
असल में, JUnit एक ओपन सोर्स यूनिट टेस्टिंग टूल है और इसका उपयोग कोड की छोटी / बड़ी इकाइयों का परीक्षण करने के लिए किया जाता है। JUnit टेस्ट को चलाने के लिए आपको एक क्लास ऑब्जेक्ट बनाना या मुख्य विधि को परिभाषित नहीं करना होगा। JUnit परख पुस्तकालय प्रदान करता है जिसका उपयोग परीक्षा परिणाम का मूल्यांकन करने के लिए किया जाता है। परीक्षण विधि को चलाने के लिए JUnit के एनोटेशन का उपयोग किया जाता है। JUnit का उपयोग कई परीक्षण मामलों वाले ऑटोमेशन सूट को चलाने के लिए भी किया जाता है।
आप क्या सीखेंगे:
- जावा परियोजना में JUnit पुस्तकालय जोड़ना
- सेलेनियम लिपियों में प्रयुक्त JUnit एनोटेशन
- JUnit जोर
- निष्कर्ष:
- अनुशंसित पाठ
जावा परियोजना में JUnit पुस्तकालय जोड़ना
सबसे पहले, हम जानेंगे कि अपने Java प्रोजेक्ट में JUnit लाइब्रेरी को कैसे जोड़ा जाए:
कैसे uat परीक्षण स्क्रिप्ट लिखने के लिए
चरण 1: Java प्रोजेक्ट पर राइट क्लिक करें-> बिल्ड पाथ-> कन्फर्म बिल्ड पाथ
चरण 2: लाइब्रेरीज़ पर क्लिक करें-> लाइब्रेरी जोड़ें
चरण 3: Junit पर क्लिक करें।
चरण 4: Junit4-> समाप्त चुनें
चरण # 5: ओके पर क्लिक करें।
डेटा ड्रिवेन फ्रेमवर्क, कीवर्ड ड्रिवेन फ्रेमवर्क और हाइब्रिड फ्रेमवर्क जैसे कई फ्रेमवर्क हैं जो JUnit टूल को टेस्ट रनर के रूप में उपयोग करते हैं और जो बैच निष्पादन और रिपोर्टिंग शुरू करने में मदद करेंगे।
सेलेनियम लिपियों में प्रयुक्त JUnit एनोटेशन
जूनिट में कई एनोटेशन उपलब्ध हैं। यहां हमने कुछ एनोटेशन का वर्णन किया है जो सेलेनियम लिपियों और रूपरेखा में बहुत बार उपयोग किए जाते हैं।
# 1 @परीक्षा
@परीक्षा एनोटेशन का उपयोग जूनिट टेस्ट चलाने के लिए किया जाता है।
उदाहरण :
@Test public void junitTest() { System.out.println('Running Junit test'); Assert.assertEquals(1,1); }
JUnit टेस्ट कैसे चलाएं:
चलाने के लिए नेविगेट करें -> JUnit परीक्षण के रूप में चलाएँ
# २। @इससे पहले:
@इससे पहले एनोटेशन का उपयोग प्रत्येक परीक्षण से पहले किसी विशिष्ट परीक्षण को चलाने के लिए किया जाता है।
public class Junttest { @Before public void beforeTest(){ System.out.println('Running before test'); } @Test public void junitTest(){ System.out.println('Running Junit test'); } }
आउटपुट:
परीक्षण से पहले चल रहा है
रनिंग जूनिट टेस्ट
दो कनिष्ठ परीक्षण विधि का उपयोग कर एनोटेशन से पहले का उदाहरण।
public class Junttest { @Before public void beforeTest(){ System.out.println('Running before test'); } @Test public void junitTest(){ System.out.println('Running Junit test'); } @Test public void secondJunitTest(){ System.out.println('Running second Junit test'); } }
आउटपुट:
परीक्षण से पहले चल रहा है
चल रहा है JUnit परीक्षण
परीक्षण से पहले चल रहा है
दूसरा JUnit परीक्षण चल रहा है
JUnit टेस्ट मेथड को चलाने से पहलेTest मेथड चलेगा। इसी तरह, सेकंडजुनटेस्ट को चलाने से पहले फिर से पहले वाला तरीका चलेगा और ऊपर जैसा आउटपुट देगा।
# ३। @कक्षा से पहले
यह विधि सभी परीक्षण चलाने से पहले एक बार निष्पादित होती है। विधि एक स्थिर विधि है। प्रॉपर्टीज फाइलों, डेटाबेस आदि का इनिशियलाइज़ेशन पहले क्लॉस विधि में किया जाता है।
public class Junttest { @BeforeClass public static void beforeClassTest(){ System.out.println('Executed before class method'); } @Test public void junitTest(){ System.out.println('Running Junit test'); } @Test public void secondJunitTest(){ System.out.println('Running second Junit test'); } }
आउटपुट:
वर्ग विधि से पहले निष्पादित
चल रहा है JUnit परीक्षण
दूसरा JUnit परीक्षण चल रहा है
# ४। @उपरांत
यह पद्धति प्रत्येक परीक्षण के बाद निष्पादित होती है।
public class Junttest { @Test public void junitTest(){ System.out.println('Running Junit test'); } @After public void afterTest(){ System.out.println('Running after method'); } }
आउटपुट:
चल रहा है JUnit परीक्षण
विधि के बाद चल रहा है
# 5 @क्लास के बाद
जैसे @BeforeClass, @AfterClass सभी परीक्षण विधियों को निष्पादित करने के बाद एक बार निष्पादित करता है। जैसे @BeforeClass मेथड, @AfterClass मेथड एक स्टैटिक मेथड होना चाहिए।
public class Junttest { @Test public void junitTest(){ System.out.println('Running Junit test'); } @Test public void secondJunitTest(){ System.out.println('Running second Junit test'); } @AfterClass Public static void afterClassTest(){ System.out.println('Running afterclass method'); } }
आउटपुट:
चल रहा है JUnit परीक्षण
दूसरा JUnit परीक्षण चल रहा है
रनक्लेश विधि
JUnit अभिकथन कुछ शर्तों को मान्य करने के लिए उपयोग किया जाता है और यदि शर्तों को पूरा नहीं किया जाता है तो कार्यक्रम के निष्पादन को रोक देता है।
# 6 परिमाणित JUnit वर्ग:
कई डेटासेट के साथ एक ही परिदृश्य को चलाने के लिए एक पैरामीटर श्रेणी का उपयोग किया जाता है।
नीचे एक JUnit परीक्षण में कई मापदंडों को पारित करने के लिए उदाहरण है।
@Parameters एनोटेशन टैग का उपयोग कई डेटा को पास करने के लिए किया जाता है। यहां, हमने 2 * 2 आयामी सरणी ली हैं और डेटा को नीचे की तरह देखा जा सकता है:
@RunWith(Parameterized.class) public class Junttest { public String name; public int age; public Junttest(String name,int age){ this.name=name; this.age=age; } @Test public void testMethod(){ System.out.println('Name is: '+name +' and age is: '+age); } @Parameters public static Collection parameter(){ Object()() pData=new Object(2)(2); pData(0)(0)='Tom'; pData(0)(1)=30; pData(1)(0)='Harry'; pData(1)(1)=40; return Arrays.asList(pData); } }
JUnit जोर
JUnit मुखर : यह जाँचता है कि यदि दोनों मान समान हैं और यदि दोनों मान समान नहीं हैं तो अभिकथन विफल हो जाता है।
यह बूलियन, इंट, स्ट्रिंग, फ्लोट, लॉन्ग, चार्ट आदि की तुलना करता है।
वाक्य - विन्यास :
Assert.assertEqual ('वास्तविक मूल्य को छोड़कर', 'वास्तविक मूल्य');
उदाहरण :
Assert.assertEqual ('एबीसी', 'एबीसी'); // दोनों तार बराबर हैं और अभिकथन पास होगा।
Assert.assertEqual ('ABC', 'DEF'); // जोर विफल हो जाएगा क्योंकि दोनों तार बराबर नहीं हैं।
Assert.assertEqual ('स्ट्रिंग्स बराबर नहीं हैं', 'एबीसी', 'डीईएफ'); // संदेश को फेंक दिया जाएगा यदि समान स्थिति संतुष्ट नहीं है।
नीचे सेलेनियम में JUnit जोर के उपयोग का उदाहरण है:
String username=driver.findElement(By.id(“username”)).getText(); String password=driver.findElement(By.id(“password”)).getText(); Assert.assertEqual(“Mismatch in both the string”, username, password);
ऊपर के उदाहरण में मुखरता विफल हो जाएगी क्योंकि दोनों तार बराबर नहीं हैं। एक उपयोगकर्ता नाम फ़ील्ड का पाठ है और दूसरा पासवर्ड फ़ील्ड का पाठ है।
JUnit मुखर : यदि स्थिति सत्य है और यदि स्थिति झूठी है तो दावा विफल हो जाता है।
Assert.assertTrue ('संदेश', स्थिति);
Assert.assertTrue ('दोनों तार बराबर नहीं हैं', ('हैलोवर्ल्ड')। बराबर ('हैलोवर्ल्ड'));
यहाँ जोर दोनों मैच के रूप में गुजरेंगे। यदि संदेश विफल हो जाता है तो यह संदेश प्रिंट कर देगा।
JUnit मुखर : यदि स्थिति झूठी है और यदि स्थिति सही है तो दावा विफल हो जाता है।
Assert.assertFalse ('संदेश', स्थिति);
Assert.assertFalse ('दोनों तार बराबर हैं', ('हैलो')। बराबर ('हैलोवर्ल्ड'));
कोई भी त्रुटि नहीं होगी क्योंकि स्थिति झूठी है।
निष्कर्ष:
अधिकांश प्रोग्रामर जूनित का उपयोग करते हैं क्योंकि यह आसान है और परीक्षण के लिए बहुत प्रयास नहीं करता है। एक साधारण हरा या लाल पट्टी परीक्षण का वास्तविक परिणाम दिखाएगा। जूनिट जीवन को आसान बनाता है क्योंकि इसमें पुस्तकालयों और टिप्पणियों का अपना सेट है। यहां हमने आमतौर पर सेलेनियम स्क्रिप्ट और फ्रेमवर्क के साथ उपयोग किए जाने वाले एनोटेशन का भी वर्णन किया है।
JUnit एनोटेशन की रूपरेखा और उपयोग के बारे में अधिक विस्तार आगामी ट्यूटोरियल में चर्चा की जाएगी जो विशेष रूप से Junit का उपयोग करके फ्रेमवर्क डिज़ाइन के लिए समर्पित है। यह ट्यूटोरियल हमें जूनिट का उपयोग करके रूपरेखा तैयार करने में मदद करेगा।
अगला ट्यूटोरियल # 12 : अगले ट्यूटोरियल में, हम TestNG, इसकी विशेषताओं और इसके अनुप्रयोगों के बारे में चर्चा करेंगे। TestNG एक अग्रिम ढांचा है जिसे डेवलपर्स और परीक्षकों दोनों द्वारा लाभ उठाने के लिए डिज़ाइन किया गया है।
अनुशंसित पाठ
- ककड़ी सेलेनियम ट्यूटोरियल: ककड़ी जावा सेलेनियम वेबड्राइवर एकीकरण
- सेलेनियम फ्रेमवर्क निर्माण और एक्सेल से टेस्टिंग डेटा - सेलेनियम ट्यूटोरियल # 21
- हमारी पहली वेबड्राइवर स्क्रिप्ट का कार्यान्वयन - सेलेनियम वेबड्राइवर ट्यूटोरियल # 10
- सेलेनियम वेबड्राइवर का परिचय - सेलेनियम ट्यूटोरियल # 8
- शुरुआती के लिए गहराई से ग्रहण ट्यूटोरियल
- सेलेनियम लिपियों के निर्माण के लिए TestNG फ्रेमवर्क का उपयोग कैसे करें - TestNG सेलेनियम ट्यूटोरियल # 12
- कुशल सेलेनियम स्क्रिप्टिंग और समस्या निवारण परिदृश्य - सेलेनियम ट्यूटोरियल # 27
- लॉग (लॉग 4j ट्यूटोरियल) के साथ सेलेनियम लिपियों को डीबग करना - सेलेनियम ट्यूटोरियल # 26