में जुनीट आर्ट एपीआई का उपयोग करना ठीक है, मैं अपने विधि तर्कों के लिए शून्य जांच करना चाहता हूं, जैसे पैरामीटर शून्य नहीं होना चाहिए। क्या मेरे जावा कोड में assertNotNull("Map should not be null", filePaths);
जैसे कुछ का उपयोग करना ठीक है? मैंक्या जावा उत्पादन कोड
if(filePaths == null){
throw new IllegalArgumentException("Maps cannot be null");
}
सिर्फ उन सभी अशक्त जाँच से मेरे कोड को साफ रखने के बचने की कोशिश कर रहा हूँ। मुझे पता है कि मैं अपनी खुद की Validator
कक्षा लिख सकता हूं और notNull
विधियों को अधिभारित कर चुका हूं लेकिन व्हील का पुन: आविष्कार करने के लिए उपयोग करने के लिए कुछ मौजूदा और सरल नहीं है।
केवल दोष यह है मैं JUnit
Assert
का उपयोग कर के देखते हैं कि यह फेंकता AssertionError
और नहीं IllegalArgumentException
और बहुत आगे है।
क्यों गुवा की ['पूर्व शर्त '] (http://docs.guava-libraries.googlecode.com/git-history/release/javadoc/com/google/common/base/Preconditions.html) का उपयोग क्यों नहीं करें? –
एक और विकल्प जावा भाषा द्वारा प्रदान किए गए जोरदार कीवर्ड का उपयोग करना है - उदाहरण के लिए, null! = Filepaths पर जोर दें: "मानचित्र शून्य नहीं हो सकते हैं"। इन चेक को स्टार्टअप पर चालू या बंद किया जा सकता है। –
@AndyThomas: सार्वजनिक विधियों में तर्क जांच के लिए दावों का उपयोग न करें। [दस्तावेज़ीकरण] से [http://docs.oracle.com/javase/7/docs/technotes/guides/language/assert.html)। यदि दावे अक्षम हैं, तो इसे कभी भी –