यह आधिकारिक JMockit ट्यूटोरियल से है के लिए परिणाम के रूप में कई अपवाद JMockit:विधि कॉल
@Test
public void doSomethingHandlesSomeCheckedException() throws Exception
{
new Expectations() {
DependencyAbc abc;
{
abc.stringReturningMethod();
returns("str1", "str2");
result = new SomeCheckedException();
}
};
new UnitUnderTest().doSomething();
}
यह संभव विपरीत राज्य के लिए है, जो एक से अधिक परिणाम और एक वापसी है - मैं 2 अपवाद और केवल हटाने की आवश्यकता फिर एक अच्छा मूल्य वापस करें।
abc.stringReturningMethod();
returns(new SomeCheckedException(), new SomeOtherException(),"third");
यह काम नहीं करता, JMockit String
को उनमें से किसी अपवाद डाली नहीं कर सकते
क्या यह तीनों कॉलों के लिए 'तीसरा' परिणाम नहीं देगा? – Queequeg
नहीं। यह 'stringReturningMethod()' के लिए लगातार तीन परिणाम रिकॉर्ड करेगा। (ए "परिणाम" या तो लौटने का एक मूल्य है, फेंकने का अपवाद है, या निष्पादित करने के लिए 'प्रतिनिधि'। JMockit स्वचालित रूप से इन असाइनमेंट को अपने आंतरिक तरीकों से आमंत्रण के रूप में फिर से लिखता है, यही कारण है कि यह काम करता है।) –
यह काम नहीं करता है। आपको 'परिणाम = नया कुछ जांच लिया गया है(); परिणाम = नया कुछ अन्य निष्पादन(); रिटर्न ("गैर-अपवाद-स्ट्रिंग-मूल्य"); ' – searchengine27