मेरे पास शून्य विधियों से भरा जावा क्लास है, और मैं अधिकतम कोड कवरेज प्राप्त करने के लिए कुछ यूनिट परीक्षण करना चाहता हूं।जूनिट परीक्षण शून्य विधियों
उदाहरण के लिए मैं इस विधि है:
protected static void checkifValidElements(int arg1, int arg2) {
method1(arg1);
method2(arg1);
method3(arg1, arg2);
method4(arg1, arg2);
method5(arg1);
method6(arg2);
method7();
}
इसकी क्योंकि मैं बेहतर समझ के लिए कोड अनुवाद खराब एक कारण के लिए नामित किया गया। प्रत्येक विधियां सत्यापित करती हैं कि तर्क किसी तरीके से मान्य हैं और अच्छी तरह से लिखे गए हैं।
उदाहरण:
private static void method1(arg1) {
if (arg1.indexOf("$") == -1) {
//Add an error message
ErrorFile.errorMessages.add("There is a dollar sign in the specified parameter");
}
}
मेरे इकाई परीक्षण ठीक छोटे तरीकों कवर कर रहे हैं क्योंकि मैं यदि ErrorFile त्रुटि संदेश होता है की जाँच करने के लिए कहें, लेकिन मैं देख रहा हूँ कि कैसे मैं अपने विधि checkIfValidElements परीक्षण कर सकते हैं न, यह रिटर्न कुछ भी नहीं या कुछ भी नहीं बदला। जब मैं मेवेन के साथ कोड कवरेज चलाता हूं, तो यह मुझे बताता है कि इकाई परीक्षण में मेरी कक्षा के इस भाग को शामिल किया गया है।
एक ही रास्ता मैं देख रहा हूँ इस विधि बदलने के लिए एक पूर्णांक या bollean मान देने के लिए, इस तरह है:
protected static int checkifValidElements(int arg1, int arg2) {
method1(arg1);
method2(arg1);
method3(arg1, arg2);
method4(arg1, arg2);
method5(arg1);
method6(arg2);
method7();
return 0;
}
इस विधि मैं एक ज़ोर के बराबर होती है ऐसा करने में सक्षम हूँ के साथ
, लेकिन यह है कि मुझे लगता है ऐसा करने के लिए व्यर्थ है। समस्या यह है कि मेरे पास कुछ कक्षाएं हैं जो इस तरह डिज़ाइन की गई हैं और यह मेरी इकाई परीक्षण कवरेज% को कम कर रही है।
मुझे समझ नहीं आता कि कैसे एक विधि की वापसी प्रकार कवरेज प्रभावित करता है:
इन पर एक नजर डालें। आवेषण भी कवरेज के लिए अप्रासंगिक हैं। एकमात्र तथ्य मायने रखता है - क्या आप इकाई परीक्षण के दौरान कोई विधि चलाते हैं या नहीं। – kan