2011-08-26 12 views
8

बुला रहा है मैं अपने इकाई परीक्षण में कोड स्निपेट निम्नलिखित गया है,EasyMock: मज़ाक उड़ाया वस्तु वास्तविक विधि

ClassToBeMocked mock = createMock(ClassToBeMocked.class); //I've statically imported EasyMock.* 
mock.callMethod(); //This is a void method 
expectLastCall(); 
replay(mock); 

लेकिन जब मैं परीक्षण चलाने expectaion अप seeting के बजाय,, callMethod() वास्तव में कहा जाता है। क्या मुझसे कुछ गलत हो रही है?

मैं इस समस्या के कारण EasyMock या किसी मॉकिंग फ्रेमवर्क के लिए बिल्कुल नया हूं और अवरुद्ध हूं। किसी भी तरह की सहायता का स्वागत किया जाएगा।

धन्यवाद, Andys

+0

क्या कक्षाएं हैं एक ठोस वर्ग या इंटरफ़ेस? इसके अलावा, आप EasyMock का किस संस्करण का उपयोग कर रहे हैं? –

उत्तर

8

यदि आप एक 'अंतिम' विधि के साथ एक वर्ग मजाक कर रहे हैं क्या होगा। EasyMock एक अंतिम विधि ओवरराइड नहीं करता है। यदि आप इंटरफ़ेस का नकल नहीं कर सकते हैं, और आप विधि को गैर-फाइनल में नहीं बदल सकते हैं, तो आप इस सीमा को पाने के लिए EasyMock के साथ PowerMock का उपयोग कर सकते हैं। उस विशिष्ट उपयोग मामले का वर्णन here है।

संबंधित मुद्दे