नीचे मेरी DataTap
कक्षा में मेरे निजी तरीका है और मैं JMockit का उपयोग कर JUnit परीक्षण इस निजी विधि करने के लिए कोशिश कर रहा हूँ -यूनिट परीक्षण करते समय jmockit का उपयोग कर एक निजी विधि में शून्य स्ट्रिंग को कैसे पास करें?
private void parseResponse(String response) throws Exception {
if (response != null) {
// some code
}
}
तो नीचे
मैंने लिखा JUnit परीक्षण लेकिन अशक्त मामले के लिए, यह किसी भी तरह एनपीई पर फेंक दिया जाता है जूनिट टेस्ट खुद ही।
DataTap tap = new DataTap();
Deencapsulation.invoke(tap, "parseResponse", "hello");
// this line throws NPE
Deencapsulation.invoke(tap, "parseResponse", null);
तो मेरे सवाल है - वहाँ किसी भी तरह से मैं null string
parseResponse
JUnit परीक्षण के हिस्से के रूप JMockit का उपयोग कर विधि को पारित कर सकते हैं?
यह मुझे लगता है कि लाइन पर क्या देख रहा हूँ है -
प्रकार अशक्त का तर्क स्पष्ट रूप से डाली जानी चाहिए [] वस्तु को के लिए varargs वापस लाने (वस्तु, स्ट्रिंग, वस्तु के आह्वान .. ।) प्रकार Deencapsulation से। इसे वैकल्पिक रूप से ऑब्जेक्ट पर एक varargs आमंत्रण
कि कोड काम करना चाहिए:
आप अगर आर्ग में से एक इस तरह शून्य है parameterTypes में पारित करने के लिए की जरूरत है। मुझे लगता है कि समस्या कहीं और है। – tbodt
यह मैं उस पंक्ति पर क्या देख सकता हूं 'टाइप नल का तर्क स्पष्ट रूप से ऑब्जेक्ट [] को ऑब्जेक्ट [] ऑब्जेक्ट, स्ट्रिंग, ऑब्जेक्ट ...) के आमंत्रण के लिए ऑब्जेक्ट [] में डाला जाना चाहिए। इसे वैकल्पिक रूप से एक varargs आमंत्रण के लिए ऑब्जेक्ट में डाला जा सकता है और यह वास्तव में असफल रहा है। – john