2009-03-28 16 views
6

मैं वसंत के साथ Junit4 में परीक्षण कोडिंग किया गया है, और मैं इस अजीब व्यवहार मिल गया:Junit4 + स्प्रिंग 2.5: दावा फेंक "NoClassDefFoundError"

मेरी परीक्षण इस तरह गुजर रहे हैं, तो सब कुछ ठीक है:

@Test 
public void truthTest(){ 

    assertTrue(true); //Ok 

} 

लेकिन, अपने परीक्षण विफल रहता है:

@Test 
public void truthTest(){ 

    assertTrue(false); //ERROR 

} 

तो बजाय एक परीक्षण की विफलता मैं एक बदसूरत और गुप्त स्टैक ट्रेस प्राप्त की, यह है:

http://pastie.org/429912

इस बदसूरत डंप के लिए खेद है, लेकिन इसकी किसी को केवल डेटा मैं इस समस्या को समझाने के लिए मिल गया है (मैं पठनीयता के लिए "pastied" यह)

मैं वास्तव में हैरान हूँ, है इस तरह का सामना करना पड़ा पहले समस्या का? अग्रिम में धन्यवाद!

+0

यहाँ एक संबंधित सूत्र में मेरी वैकल्पिक हल http://stackoverflow.com/a/26029170/206622 –

उत्तर

11

http://jira.springframework.org/browse/SPR-5145

यह वसंत परीक्षण 2.5.x. के साथ एक ज्ञात समस्या है यह जुनीट 4.5 के साथ असंगत है। 4.0-4.4 का प्रयोग करें।

या आप समस्या ट्रैकर में पैच की कोशिश कर सकते हैं।

+1

काम does not या तो है साइड नोट का बिट: (अभी तक), समाधान है "यदि आप 4.0-4.4 का उपयोग कर रहे हैं, तो 4.5 का प्रयास करें। यदि आप 4.5 का उपयोग कर रहे हैं, तो 4.0-4.4 आज़माएं"। मेरे पास अभी भी एक ही समस्या थी और मैंने इसे 4.5 तक अपग्रेड करके हल किया। – cwallenpoole

0

क्या होगा अगर आप अपने परीक्षण वर्ग में AssumptionViolatedException आयातित?

ऐसा लगता है कि यह वर्ग उचित अपवाद फेंकने के लिए नहीं मिल रहा।

+0

मैं org.junit.internals.AssumptionViolatedException आयात किया है लेकिन यह एक पर –

1

मैं जब मैं अपने स्प्रिंग JUnit परीक्षण लिखा एक ही समस्या थी। पदों का एक बहुत ऑनलाइन उपलब्ध की तरह, वहाँ केवल दो विकल्प

1) वसंत संस्करण के साथ अद्यतन रहें और JUnit या 2 के नवीनतम संस्करण का उपयोग कर रहे हैं) अपने वर्तमान स्प्रिंग संस्करण छोड़ दो और JUnit संस्करण 4.4 का उपयोग करें या कम से।

मैं विकल्प # 2 जहाँ हम 2.5 पर हमारे स्प्रिंग संस्करण को छोड़ दिया और JUnit 4.4 डाउनलोड किया चुना है। उसके बाद सब ठीक काम किया।

यह भी पता लगाने के लिए एक और बिंदु यह है कि यदि आपकी परियोजना यानी, प्रोजेक्ट ए आप अपने परीक्षण लिख रहे हैं, तो एक अन्य प्रोजेक्ट बी पर निर्भरता है जिसमें वसंत का एक और संस्करण है, आपको भी एक ही त्रुटि मिल जाएगी। मैंने इसे कठिन तरीका सीखा।

-Prashanth

संबंधित मुद्दे