मेरे पास एक कक्षा है जिसमें 2 विधियां हैं। मैं कक्षा का मज़ाक उड़ाता हूं और फिर पहली विधि का मज़ाक उड़ाता हूं लेकिन दूसरा नहीं।मॉकिटो- वास्तविक विधि को कॉल करना
उदा।
class C {
void m1() { ...}
boolean m2() { ... return flag;}
}
इकाई परीक्षण कोड:
C cMock = Mockito.mock(C.class);
Mockito.doNothing().when(cMock).m1();
Mockito.when(cMock.m2()).thenCallRealMethod();
अजीब बात यह है कि एम 2 नहीं बुलाया जा रहा है।
क्या मुझे यहां कुछ याद आती है?
आपकी वास्तविक कक्षा सी गैर-फाइनल है? इसके अलावा, एक विकल्प के रूप में, आप एक नकली के बजाय जासूस बना सकते हैं, और फिर आपको केवल एम 1 के लिए 'कुछ भी नहीं() 'करना होगा। –
क्या आप हमें पूरे यूनिट टेस्ट कोड दे सकते हैं? क्योंकि यहां, सामान्य है अगर एम 2 नहीं कहा जा रहा है। आप सिर्फ मोजे के व्यवहार की घोषणा कर रहे हैं। लेकिन कोई असली विधि बुलाया नहीं जाता है। – LaurentG
@ केविन। हाँ इसकी अंतिम नहीं है। जासूस काम किया! –