2010-07-23 12 views
5

NUnit जीयूआई का उपयोग करते समय इकाई परीक्षण चलाने के लिए, वहाँ एक तरीका है या तो:क्या मैं एनयूएनआईटी जीयूआई को ब्रेकपॉइंट/असफल परीक्षण पर विजुअल स्टूडियो डीबगर में तोड़ने का कारण बन सकता हूं?

परीक्षण अंदर
  • सेट breakpoints,
  • या एक की विफलता पर जस्ट-इन-टाइम डीबगर दृश्य स्टूडियो में तोड़ परीक्षा?

उत्तर

5

आपकी पहली आवश्यकता बहुत सरल है। एनयूएनआईटी जीयूआई (टूल्स-> प्रक्रिया पर संलग्न करें) के लिए वीएस डीबगर संलग्न करें और तदनुसार अपने ब्रेकपॉइंट सेट करें। जब परीक्षण डीबगर संलग्न होते हैं, तो ब्रेकपॉइंट्स हिट हो जाएंगे।

दूसरी आवश्यकता भी सीधा है, लेकिन मैंने इसे काम करने के लिए सत्यापित नहीं किया है (यानी, मुझे पता है कि यह टूट जाएगा, लेकिन मैं उपयोगकर्ता कोड से कितना दूर नहीं होगा)। जब एक यूनिट परीक्षण विफल रहता है, तो न्यूटिट फ्रेमवर्क NUnit.Framework.AssertionException उठाता है। इस अपवाद को फेंकने पर ब्रेक करने के लिए डीबगर सेट करें, और आपको अपने कोड में ब्रेकपॉइंट्स सेट करने की आवश्यकता नहीं होगी। ऐसा करने के लिए, डीबग-> अपवाद ... पर जाएं, फिर चुनें ...सामान्य भाषा रनटाइम अपवाद का चयन करें और NUnit अपवाद के पूर्ण टाइपनाम (नामस्थान सहित) दर्ज करें। अंत में, मूल अपवाद स्क्रीन में, अपना नया अपवाद चुनें और पर फेंक दें।

फिर से, अपवादों को फेंकने पर इसे पकड़ने के लिए आपको डीबगर के साथ अपने परीक्षण चलाने की आवश्यकता होगी।

3

एनयूनीट प्रक्रिया में विजुअल स्टूडियो डीबगर संलग्न करें, और फिर अपने परीक्षण NUnit GUI में चलाएं।

1

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

मुझे पता नहीं है कि परीक्षण की विफलता पर यह कैसे किया जा सकता है।

6

किसी प्रक्रिया को जोड़ने की परेशानी से परेशान न हों। वह बहुत जल्दी हो जाता है। इसके बजाय, अपनी इकाई परीक्षण परियोजना के गुणों पर जाएं, और डीबग टैब, nunit.exe को इंगित करने के लिए "बाहरी प्रोग्राम प्रारंभ करें" सेट करें, और "कमांड लाइन तर्क" टेक्स्ट बॉक्स में आउटपुट डीएलएल नाम जोड़ें (उदाहरण के लिए यूनिटटेस्ट .dll)

+0

@ निकमियर: छवियों के साथ चरण-दर-चरण मार्गदर्शिका [यहां पाई जा सकती है] (http://erraticdev.blogspot.com/2012/01/running-or-debugging-nunit-tests-from.html)। यह ** Ctrl-F5 ** को मारकर स्वचालित रूप से NUnit परीक्षणों को चलाने के लिए संभव बनाता है या ** F5 ** मारते समय उन्हें डीबग करना संभव बनाता है। किसी अन्य परियोजना के साथ ही। –

+0

उपरोक्त टिप्पणी और @nickMeyer से लिंक बहुत उपयोगी था और नतीजतन हम मूल प्रश्न –

+0

के अनुसार प्रदर्शन करने में कामयाब रहे, यह विजुअल स्टूडियो 2012 एक्सप्रेस में काम नहीं करता है, क्योंकि डीबग सेटिंग्स में कोई विकल्प नहीं है कार्रवाई शुरू करें। यदि आप अपनी .csproj फ़ाइल को हाथ-संशोधित करने के इच्छुक हैं तो आप स्टार्टएक्शन, स्टार्टप्रोग्राम, और स्टार्टअर्ग्यूमेंट्स गुणों को इस तरह सेट कर सकते हैं, जिस पर वांछित प्रभाव होगा। – yoyo

0

NUnit प्रक्रिया के लिए संलग्न परीक्षण चलाने के दौरान करने के लिए इसके अलावा, आप अस्थायी रूप से जोड़ सकते हैं

Debugger.Launch() 

या तो एक SetUpFixture TestFixtureSetUp में या या यहां तक ​​कि एक कोशिश पकड़ जहां प्रत्याशित अपवाद पकड़ा है में।

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