2014-04-30 8 views
7

मैं सोच रहा था कि क्या assertThat() में एक कस्टम त्रुटि संदेश जोड़ने का एक तरीका है?जूनिट में assertThat() के लिए कस्टम त्रुटि संदेश?

इस में उदाहरण के लिए

:

assertThat(file.exists(), is(equalTo(true))); 

मैं कुछ कस्टम संदेश जोड़ना चाहते हैं, कह रही है जो फ़ाइल नाम does not मौजूद

उत्तर

9

पाठक से बचने के लिए मैं निम्नलिखित को प्राथमिकता दूंगा कि आप यह कहना चाहते हैं कि फ़ाइल का नाम मौजूद नहीं है ..!

assertThat("File name should exist", file.exists(), is(equalTo(true))); 
9

उपयोग अतिभारित assertThat विधि

assertThat("File name doesn't exist", file.exists(), is(equalTo(true))); 
+3

पठनीयता को ध्यान में रखें! जब आप इसे पढ़ते हैं: "जोर दें कि फ़ाइल का नाम मौजूद नहीं है ..." ... यह विपरीत है कि आप वास्तव में परीक्षण करते हैं! – chipiik

1

आप चाहते हो सकता है assertTrue() विधियों का उपयोग केवल 2 तर्कों के साथ करें:

Assert.assertTrue("File "+file.getAbsoluePath()+"does not exist", file.exists()); 
2

मैं इस पसंद करते हैं, के बाद से एक एक वाक्य के रूप में यह पढ़ सकते हैं: "उस फ़ाइल पर जोर 'myFile' मौजूद: myFile मौजूद है सच है"

assertThat("File '" + myFile + "' exists", myFile.exists(), is(true)); 

और एक के लिए सभी आवश्यक साथ भी पठनीय संदेश हो जाता है जानकारी विफल होने पर:

java.lang.AssertionError: File '/blah' exists 
Expected: is <true> 
    but: was <false> 
संबंधित मुद्दे