मुझे जावा assert
कीवर्ड पसंद नहीं है, क्योंकि यह हमेशा उत्पादन कोड में सक्षम नहीं है। मैं उपयोग करने के लिए एक अच्छी "प्रोडक्शनएस्र्ट" कक्षा की तलाश में हूं, जो हमेशा उल्लेखनीय दावों को चलाता है।उत्पादन के उपयोग के लिए एक अच्छा जोर वर्ग? जावा के ग्रोवी के पावरएएसएसर्ट के बराबर?
एक उम्मीदवार Guava's Preconditions है। यह सभ्य है, लेकिन थोड़ा सीमित (उदा। assertEquals()
, assertNull()
, assertGreaterEquals()
)।
एक विकल्प में जुनीट या एक अन्य परीक्षण ढांचा शामिल है ... लेकिन मैं केवल एक साधारण जोर वर्ग के लिए एक संपूर्ण परीक्षण ढांचे पर निर्भर होने के लिए अनिच्छुक हूं।
यदि मैं ग्रोवी में प्रोग्रामिंग कर रहा था, तो मैं PowerAssert का उपयोग करूंगा।
क्या जावा के लिए एक अच्छा "ProductionAssert" कक्षा है?
पीएस - एक विकल्प अंततः Java Contracts जैसा कुछ जांचना है ... लेकिन जो मैं अभी देख रहा हूं वह पूर्ण न्यूनतम, शून्य घर्षण, बस निर्माण प्रक्रिया में किसी भी बदलाव के बिना ड्रॉप-इन-इन ... मुझे यकीन नहीं है कि अनुबंध उस विवरण को फिट बैठता है।
public void thing(String foo){
Assert.hasText(foo, "'foo' is required");
}
जाहिर है अपने वसंत का उपयोग नहीं तो यह करने के लिए नहीं जा रहा है, तो:
यह स्क्रैच से एक PowerAssert वर्ग लिखने के लायक नहीं है? – vulkanino
@ vulkanino - मैंने बस ऐसा करना शुरू कर दिया ... लेकिन मैं आमतौर पर पुन: कार्यान्वित करने के बजाय पुन: उपयोग करना पसंद करता हूं, जब तक कि कोई अच्छा कारण न हो। – ripper234
मुझे भी हाँ, लेकिन आपने "पूर्ण न्यूनतम, शून्य घर्षण" लिखा है ... – vulkanino