C # के लिए NUnit विज़ुअल स्टूडियो के साथ एकीकृत यूनिट टेस्ट सुविधा के साथ कैसे तुलना करता है


12

मुझे C # .NET का उपयोग करके विकसित एक मध्य स्तर के डेस्कटॉप एप्लिकेशन को विकसित करने के लिए एक टीम में काम करने की आवश्यकता है। इससे पहले, मैंने यूनिट टेस्टिंग और टेस्ट ड्रिवेन डेवलपमेंट लागू नहीं किया है। मुझे पता है कि यूनिट परीक्षण C # अनुप्रयोगों के लिए कई उपकरण और रूपरेखा मौजूद है। अब तक, मैं नुनिट और विज़ुअल स्टूडियो के साथ एकीकृत इकाई परीक्षण सुविधा से अवगत हूं।

मैं जानना चाहूंगा कि दोनों की तुलना कैसे होती है?

जवाबों:


14

सुनिश्चित करने के लिए दोनों के बीच कुछ ओवरलैप है। NUnit पूर्ववर्ती है, और परिणामस्वरूप अधिक परिपक्व है। C # यूनिट टेस्ट फ्रेमवर्क छोटा है, लेकिन विजुअल स्टूडियो के साथ एकीकृत है।

मैं जावा की दुनिया से आया हूं, जहां जुनीत राजा है (अन्य लोग हैं, लेकिन कोई भी उतना लोकप्रिय नहीं है), और न्निट 2.5.x जुआन 4 के काम करने के तरीके से बहुत अच्छा मेल है। वास्तव में, यह जावा समकक्ष की तुलना में बहुत बेहतर काम करता है।

जहां तक ​​टेस्ट की परिभाषा का सवाल है, मैं एनयूनाइट का पक्ष लेता हूं। निश्चित एमएस टेस्ट में समान (लेकिन अलग) विशेषताएं हैं जो आप अपनी कक्षाओं में लागू करते हैं, लेकिन मेरा मानना ​​है कि इसमें कुछ विशेषताओं की कमी है जो आपको कुछ प्रकार के परीक्षण पर कुछ काम बचा सकते हैं। आप StackOverflow पर एक समान चर्चा देख सकते हैं ।

मुझे NUnit में बनाया गया नया दावा मॉडल पसंद है (यह हैमरेस्ट स्टाइल का उपयोग कर रहा है) क्योंकि वे दोनों आसानी से पढ़ते हैं और आसानी से एक्स्टेंसिबल हैं।

  • NUnit में बेहतर थ्री पार्टी सपोर्ट होगा, MS Test में बेहतर इंटीग्रेशन (आउट ऑफ द बॉक्स) होगा।
  • NUnit में बेहतर लचीलापन और एक्स्टेंसिबिलिटी होगी, इस क्षेत्र में एमएस टेस्ट को नुकसान होगा।
  • दोनों इकाई परीक्षण चलाते हैं और आपके परिणामों की जांच करते हैं, दोनों टीडीडी के लिए काम करेंगे।

3

एकमात्र वास्तविक अंतर जो मैंने देखा था जब मुझे एक समर्पित MSBUILD सर्वर फॉर्म TFS पर चलने के लिए एक बिल्ड स्क्रिप्ट बनानी थी, nUnit सेट करना और nnnit परीक्षा परिणाम प्राप्त करना एक वास्तविक दर्द था, इसे सेट करना और MSTest के परिणाम प्राप्त करना एक हवा थी।

इसके अलावा Resharper के साथ एक समस्या थी जहाँ MSTest टेस्ट को टेस्ट रनर से नहीं चलाया जा सकता था। नए संस्करणों में यह निश्चित है, इसलिए यदि आपके पास पुराने संस्करण का रिचार्पर है तो यह अभी भी एक समस्या हो सकती है।

रॉय ओशेरेव की यह पोस्ट अभी भी एक अच्छा अवलोकन है।

ps: मेरे अन्य उत्तर को नष्ट कर दिया, उस एक के लिए मेरी माफी, बिल्कुल भी उपयोगी नहीं था।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.