यह तब किया जा सकता है यदि आप मॉकिटो 2 का उपयोग कर रहे हैं, नए इनक्यूबेटिंग फ़ीचर के साथ जो अंतिम वर्गों और विधियों के मॉकिंग का समर्थन करता है।
नोट करने के लिए मुख्य बिंदु:
1. "org.mockito.plugins.MockMaker" नाम के साथ एक सरल फ़ाइल बनाएं और इसे "mockito- एक्सटेंशन" नामक फ़ोल्डर में रखें। यह फ़ोल्डर क्लासपाथ पर उपलब्ध कराया जाना चाहिए।
2. ऊपर बनाई गई फ़ाइल की सामग्री नीचे दी गई के अनुसार सिंगल लाइन होनी चाहिए:
मॉक-मेकर-इनलाइन
मॉकिटो एक्सटेंशन तंत्र को सक्रिय करने और इस ऑप्ट-इन सुविधा का उपयोग करने के लिए उपरोक्त दो चरणों की आवश्यकता है।
नमूना वर्ग इस प्रकार हैं: -
FinalClass.java
public final class FinalClass {
public final String hello(){
System.out.println("Final class says Hello!!!");
return "0";
}
}
Foo.java
public class Foo {
public String executeFinal(FinalClass finalClass){
return finalClass.hello();
}
}
FooTest.java
public class FooTest {
@Test
public void testFinalClass(){
// Instantiate the class under test.
Foo foo = new Foo();
// Instantiate the external dependency
FinalClass realFinalClass = new FinalClass();
// Create mock object for the final class.
FinalClass mockedFinalClass = mock(FinalClass.class);
// Provide stub for mocked object.
when(mockedFinalClass.hello()).thenReturn("1");
// assert
assertEquals("0", foo.executeFinal(realFinalClass));
assertEquals("1", foo.executeFinal(mockedFinalClass));
}
}
आशा करता हूँ की ये काम करेगा।
पूरा लेख यहां प्रस्तुत है मॉकिंग-ऑफ-अनमॉक ।