शुरुआती लोगों के लिए जेमॉक ट्यूटोरियल

शुरुआती लोगों के लिए जेमॉक ट्यूटोरियल
विषयसूची

टेस्ट प्रोजेक्ट वाले शुरुआती लोगों के लिए jMock ट्यूटोरियल

जेमॉक क्या है?

jMock एक लाइब्रेरी है जो मॉक ऑब्जेक्ट के साथ जावा कोड का परीक्षण-संचालित विकास बनाने में मदद करती है जेमॉक हम स्वतंत्र रूप से कक्षा का परीक्षण कर सकते हैं जो अन्य कक्षा पर निर्भर करता है।

मान लीजिए कि यदि एक वर्ग दूसरे वर्ग पर निर्भर करता है तो हम आश्रित वर्ग का एक मॉक बना सकते हैं और आश्रित वर्ग का परीक्षण करने के लिए प्रारंभिक गुण सेट कर सकते हैं।

इमॉक ट्यूटोरियल

जेमॉक ट्यूटोरियल उदाहरण:

नोट: हम इस परीक्षण परियोजना के लिए एक्लिप्स प्लेटफ़ॉर्म का उपयोग कर रहे हैं। आप यहां से एक्लिप्स डाउनलोड कर सकते हैं यहाँ.

सुनिश्चित करें जावा एसई रनटाइम पर्यावरण इंस्टॉलेशन शुरू करने के लिए एक्लिप्स इंस्टॉलर पहले से ही इंस्टॉल है।

जावा में टेस्ट प्रोजेक्ट नाम से एक टेस्ट प्रोजेक्ट बनाएं। इसके क्लासपाथ में निम्नलिखित जार शामिल करें:

जेमॉक ट्यूटोरियलPin

  • jmock-2.5.1.jar
  • हैमक्रेस्ट-कोर-1.1.jar
  • हैमक्रेस्ट-लाइब्रेरी-1.1.jar
  • JUnit-4.5.jar

शुरुआती लोगों के लिए जेमॉक ट्यूटोरियलPin

ITestInterface नामक एक इंटरफ़ेस बनाएं। इस इंटरफ़ेस में निम्नलिखित कोड डालें:

पैकेज परीक्षण;

सार्वजनिक इंटरफ़ेस ITestInterface

{

सार्वजनिक पूर्णांक परीक्षण();

}

जेमॉक क्या है?Pin

TestClass1 बनाएं। इस क्लास में निम्नलिखित कोड डालें

पैकेज परीक्षण;

पब्लिक क्लास TestClass1 ITestInterface लागू करता है

{

सार्वजनिक पूर्णांक परीक्षण()

{

वापसी 3;

}

}

जेमॉक उदाहरणPin

TestClass2 बनाएं। इस क्लास में निम्नलिखित कोड डालें





पैकेज परीक्षण;

सार्वजनिक वर्ग TestClass2

{

आईटीटेस्टइंटरफ़ेस टेस्टइंटरफ़ेस;

सार्वजनिक TestClass2()

{

this.testInterface=testInterface;

}

सार्वजनिक int testMock()

{

int परिणाम=testInterface.test();

वापसी परिणाम;

}

}

जेमॉक ट्यूटोरियल पीडीएफPin

TestClass3 बनाएं। इस क्लास में निम्नलिखित कोड डालें

पैकेज परीक्षण;

आयात junit.framework.Assert;

आयात org.jmock.Mockery;

आयात org.junit.Test;

सार्वजनिक वर्ग TestClass3

{

@परीक्षा

सार्वजनिक शून्य परीक्षणJmock()

{

org.jmock.Mockery TestInterfaceMock= new Mockery();

अंतिम ITestInterface testInterface=TestInterfaceMock.mock(ITestInterface.class);

TestInterfaceMock.checking(नया org.jmock.Expectations()

{{

oneOf(testInterface).test();

विल(रिटर्नवैल्यू((3)));

}});

int j=testInterface.test();

System.out.println(j);

Assert.assertEquals(j, 3);

}

}

शुरुआती लोगों के लिए जेमॉकPin

उपरोक्त उदाहरण से यह स्पष्ट है कि TestClass1 इंटरफ़ेस ITestInterface को लागू करता है। यहां यदि हम देखते हैं कि TestClass2 TestClass1 पर निर्भर है। तो इसे इकाई परीक्षण योग्य बनाने के लिए हम TestClass2 में TestClass1 का नया कार्य नहीं कर रहे हैं। हम नकली ऑब्जेक्ट का उपयोग कर रहे हैं।

TestClass3 में हम ITestInterface का मॉक ऑब्जेक्ट बना रहे हैं। हम TestClass2 की यूनिट टेस्टिंग के दौरान कॉल करने पर इस ऑब्जेक्ट के 3 लौटने की उम्मीद सेट कर रहे हैं। उदाहरण के लिए TestClass3 में जब हम testInterface.test() पर कॉल करते हैं तो कॉल TestClass2 पर जाता है। TestClass2 में जब हम testInterface.test() को कॉल करते हैं तो मान मॉक ऑब्जेक्ट द्वारा लौटाया जाता है। इस तरह हम TestClass2 का स्वतंत्र रूप से परीक्षण कर रहे हैं।

उपरोक्त उदाहरण का परीक्षण करने के लिए TestClass3 पर राइट क्लिक करें और जूनिट टेस्ट के रूप में रन का चयन करें।


जूनिट टेस्टPin
जूनिट टेस्ट

यह निम्नलिखित स्क्रीन दिखाएगा:

जुनिट टेस्ट रनPin

टेस्ट केस सफलतापूर्वक निष्पादित!

Picture of Anson Antony
एंसन एंटनी
एंसन एक योगदानकर्ता लेखक और संस्थापक हैं www.askeygeek.com. कुछ भी नया सीखना हमेशा से उनका जुनून रहा है, ASKEYGEEK.com प्रौद्योगिकी और व्यवसाय के प्रति उनके जुनून का परिणाम है। उन्हें बिजनेस प्रोसेस आउटसोर्सिंग, वित्त और लेखा, सूचना प्रौद्योगिकी, परिचालन उत्कृष्टता और बिजनेस इंटेलिजेंस में एक दशक का बहुमुखी अनुभव मिला है। कार्यकाल के दौरान, उन्होंने विभिन्न भूमिकाओं और जिम्मेदारियों में जेनपैक्ट, हेवलेट पैकर्ड, एम*मोडल और कैपजेमिनी जैसे संगठनों के लिए काम किया था। व्यवसाय और प्रौद्योगिकी के अलावा, वह फिल्मों के शौकीन हैं, जो सिनेमा देखने और सीखने में घंटों बिताते हैं और एक फिल्म निर्माता भी हैं!

5 प्रतिक्रियाएं

Anson को प्रतिक्रिया दें जवाब रद्द करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *

बधाई हो!
आपने कर दिखाया,
बंद मत करो!

उठो 60,000 UberTTS कैरेक्टर क्रेडिट निःशुल्क!!!

यह पॉपअप नहीं दिखाएगा आप पर है दोबारा!!!

उबरटीटीएस
Share to...