मैं जुनीट डब्ल्यू/ईज़ीमोक में एक परीक्षण स्थापित करने की कोशिश कर रहा हूं और मैं एक छोटे से मुद्दे में भाग रहा हूं कि मैं अपने सिर को चारों ओर लपेट नहीं सकता। मैं उम्मीद कर रहा था कि यहां कोई मदद कर सकता है।जुनीट Easymock अप्रत्याशित विधि कॉल
यहाँ विधि मैं परीक्षण करने के लिए कोशिश कर रहा हूँ का एक सरलीकृत संस्करण है:
public void myMethod() {
//(...)
Obj myObj = this.service.getObj(param);
if (myObj.getExtId() != null) {
OtherObj otherObj = new OtherObj();
otherObj.setId(myObj.getExtId());
this.dao.insert(otherObj);
}
//(...)
}
ठीक है तो EasyMock का उपयोग कर रहा service.getObj(myObj)
कॉल मज़ाक उड़ाया गया है और कहा कि ठीक काम करता है।
मेरी समस्या तब होती है जब जुनीट dao.insert(otherObj
पर कॉल करता है) कॉल करें। EasyMock उस पर *Unexpected Method Call*
फेंकता है।
मैं अपने परीक्षण में कि दाव मजाक और उस पर expectLastCall().once();
का उपयोग कर कोई फ़र्क नहीं पड़ेगा, लेकिन यह मान लिया गया है मैं "otherObj" कि डालने समय में एक पैरामीटर के रूप में पारित कर दिया है पर एक संभाल कि ... पाठ्यक्रम मैं में से कौन सा ऐसा नहीं है क्योंकि यह सशर्त रूप से परीक्षण की जा रही विधि के संदर्भ में बनाया गया है।
किसी को भी कभी इसका सामना करना पड़ा है और किसी भी तरह से इसे हल किया है?
धन्यवाद।
हाँ है कि चाल धन्यवाद DoctorRuss किया था। :) – Lancelot