jUnit

2009-07-14 16 views
12

का उपयोग कर एक्लिप्स में अपवाद पर तोड़ें क्या जुनीट के लिए डीबग मोड में असीमित अपवादों पर एक्लिप्स ब्रेक बनाने का कोई तरीका है? मुख्य() को निष्पादित करते समय ग्रहण ठीक हो जाता है। क्या कोई कमांड लाइन स्विच है जिसका मैं उपयोग कर सकता हूं?jUnit

धन्यवाद

उत्तर

1

यदि आप जुनीट में एक ही विधि डीबग करते हैं, तो ब्रेकपॉइंट्स काम करना शुरू कर देते हैं। यदि जुनीट में पूरी कक्षा या पैकेज डीबग किया गया है, तो डीबगर काम नहीं करता है।

3

आप डिबग मोड में चलाते हैं, इस ग्रहण के बाद के संस्करणों के डिफ़ॉल्ट व्यवहार किया जाना चाहिए।

+0

दिलचस्प। ऐसा लगता है जब मुझे जुनीट परीक्षणों में त्रुटियां होती हैं। – User1

+0

मैंने प्रश्न अपडेट किया। – User1

+0

आपके द्वारा जोड़े गए महत्वपूर्ण विवरण। आप जूनिट का आह्वान कैसे करते हैं? –

0

आपको मेनू से रन -> डीबग चुनना होगा। ग्रहण तब आपके कोड में अपवाद और ब्रेकपॉइंट्स पर रुक जाएगा।

6

डिबग परिप्रेक्ष्य कि वास्तव में आप जो अपवाद आप में रुचि रखते हैं फ़िल्टर कर सकते हैं से।

ब्रेकप्वाइंट में वहाँ है एक देखने "जम्मू!" बटन। यह एक खिड़की खुलता है जो आपको यह चुनने की अनुमति देता है कि आप कौन से अपवादों को तोड़ना चाहते हैं।

यदि समस्या केवल तब होती है जब जुनीट परीक्षण आपको यह सुनिश्चित करने की आवश्यकता होती है कि आप डीबग मोड में परीक्षण लॉन्च कर रहे हैं। जुनीट में रीरुन बटन "सामान्य" मोड में चलाएगा। डीबग में परीक्षण चलाने के लिए आप फ़ाइल पर राइट क्लिक कर सकते हैं और मेनू से "डीबग एज़ -> जुनीट टेस्ट" का चयन कर सकते हैं।

+1

अंतर्दृष्टि के लिए धन्यवाद। मैं डीबग कर रहा हूं -> जुनीट टेस्ट। यह ब्रेकपॉइंट्स पर रोक रहा है, लेकिन अपवादों पर नहीं। ऐसा प्रतीत होता है कि जुनीट अपवादों को निगलता है (शायद किसी प्रकार के प्रयास/पकड़ ब्लॉक के साथ)। कोड junit.framework.TestCase का उप-वर्ग है। अपवाद "int i = 1/0;" के कारण होता है परीक्षण के लिए। – User1

+1

मैं निश्चित रूप से आपकी समस्या का पुनरुत्पादन कर सकता हूं। मैंने पहले कभी इस व्यवहार का उपयोग नहीं किया था। मुझे 3.5 रिलीज नोट्स में निम्न टिप्पणी मिली: सूर्य की 1.6.0_14 आभासी मशीन पर डेवलपर्स डीबगिंग अनुप्रयोगों को पता होना चाहिए कि ब्रेकपॉइंट अविश्वसनीय हैं (यानी निष्पादन को हमेशा निलंबित नहीं करते हैं)। समस्या विंडोज और लिनक्स प्लेटफार्मों पर होती है। इस बिंदु पर, यह ग्रहण के बजाय वीएम के साथ एक मुद्दा प्रतीत होता है। वर्कअराउंड 1.6.0_13 आभासी मशीन का उपयोग करना है। (बग 279137)। – Aaron

+0

क्या डाउनग्रेडिंग ने इसे आपकी तरफ ठीक किया? मैंने 1.6.0_13 की कोशिश की और यह कुछ भी नहीं बदला। मुझे पूरा यकीन है कि डाउनग्रेड प्रभावी है, लेकिन निश्चित नहीं है कि कैसे सत्यापित किया जाए। – User1

3

थोरबोजर्न रावण एंडर्सन ने कहा, यह ग्रहण गैनीमेड के बाद से डिफ़ॉल्ट व्यवहार है।
यदि यह सक्षम नहीं है, गोटो
Window->Preferences
Java->Debug
[X] Suspend execution on uncaught exceptions

यह बहुत उपयोगी है, लेकिन यह कष्टप्रद हो सकता है, इसलिए यह पता लगाने की आप के लिए सबसे अच्छा विकल्प क्या प्रयास करते हैं,।