40

मुझे एहसास है कि 2008 (जैसे this one) तक विजुअल स्टूडियो के संस्करणों के लिए NUnit v MSTest के सामान्य प्रश्न को संबोधित करने वाले कई पुराने प्रश्न हैं।न्यूटिट बनाम विजुअल स्टूडियो 2010 का एमएसटीएस्ट?

माइक्रोसॉफ्ट के पास अपने तीसरे संस्करण में चीजों को सही करने का इतिहास है। एमएसटीएस्ट के लिए, वह वीएस -2010 है।

क्या उन्होंने MSTest के साथ ऐसा किया है? क्या आप इसे न्यूटिट की वरीयता में एक नई परियोजना में इस्तेमाल करेंगे?

मेरे विशिष्ट चिंताओं:

  • गति
  • CruiseControl.NET के भीतर परीक्षण (या तो कमांडलाइन या MSBuild कार्य) CC.NET से
  • कोड कवरेज रिपोर्ट चलाने
  • आप में MSTest परीक्षण चला सकते हैं डीबग मोड

(हम रीशेपर का उपयोग करते हैं, इसलिए टेस्ट-धावक हमारे लिए कोई मुद्दा नहीं हैं। हमने एल के लिए एनयूनीट का उपयोग किया है। कुछ साल बीमार हमारे पास टीएफएस नहीं है।)

+0

देखें [आज-के-पसंदीदा-विकल्प-आज-के-इकाई-परीक्षण-इन-बनाम -2010] (http://stackoverflow.com/questions/6339234/what-are-the-preferred- विकल्प-आज-के-यूनिट-परीक्षण-इन-विज़ुअल-स्टूडियो-2010) – nawfal

उत्तर

31
  • सूची आइटम की गति ही है, लेकिन MSTest थोड़ा धीमा है क्योंकि यह परीक्षण चालन हर बार
  • MSBuid के लिए फ़ोल्डर बनाता है और CC.Net बड़ा दर्द है हो सकता है। आप नहीं MSTest कंप्यूटर पर वी.एस. बिना उस पर (यकीन नहीं 100 2010 के बारे में है, लेकिन 2008 के साथ यह इतना है) चला सकते हैं
  • यकीन नहीं, खेद
  • हाँ आप दृश्य स्टूडियो से कर सकते हैं,

मेरे अनुशंसा निम्नलिखित है: यदि NUnit आपको संतुष्ट करता है - इसका उपयोग करें, MSTest

+7

अंतिम विवरण के साथ Concur। –

+1

@Preet। मैं सहमत हूँ। अंतिम विवरण के लिए विजुअल स्टूडियो – RichardOD

+0

+1 के रिलीज़ के साथ एमएसटीएस्ट परिवर्तन भी बंधे हैं। मैं एक परियोजना पर था और हमने एमएसटीएस्ट (2008) के साथ यूनिट परीक्षण शुरू किया। हम इसके साथ बहुत नाराज हो गए, हम न्यूटिट पर चले गए। मैं वीएस 2010 का उपयोग कर रहा हूं, और वीएस 2008 में ज्यादा सुधार नहीं है। – Mas

0

मुझे CruseControl.net के बारे में बहुत कुछ पता नहीं है, लेकिन आप परीक्षण डीबग कर सकते हैं। वर्तमान में हम टीएफएस का उपयोग नहीं करते हैं, और एमएसटीएस्ट हमारे लिए काम कर रहा है।

2

नहीं। एपडोमेन और असेंबली समाधान के संबंध में वही समस्याएं अभी भी मौजूद हैं। मैं तब तक टालना चाहूंगा जब तक आप अन्य कार्यात्मक परीक्षण या टीम सिस्टम के साथ एकीकरण के लिए नई भलाई नहीं चाहते।

0

यदि आपको लगता है कि आप कभी भी 64 बिट मोड में अपने परीक्षण चलाएंगे, तो एनयूनीट का उपयोग करें। एमएसटेस्ट केवल x86 है।

+0

यहां एक वर्कअराउंड का वर्णन किया गया है, http://rupertrawnsley.blogspot.com/2011/04/mstest-and-64bit.html, लेकिन ऐसा लगता है कि संभवतः थोड़ा kludgy? – AnneTheAgile

14

धागे पर कुछ पुरानी जानकारी को सही करने के लिए;

  1. यह 2010
  2. में 64 बिट परीक्षण चलाने के लिए VS2008 से संभव है आगे यह MSTest में, बस अक्षम तैनाती बाइनरी की प्रतिलिपि बनाएं निर्देशिकाएं बनाएं एएनसी डिफ़ॉल्ट thats 2010 में, के लिए आवश्यक नहीं है, लेकिन आप के लिए है 2008 में इसे
  3. 2010 एमएसटीईटी तेज़ है, लेकिन इसका सामान्यीकृत परीक्षण ढांचा जो भार/वेब/यूआई परीक्षण चलाता है, वहां डिजाइन में समझौता होता है जो इसे धीमा कर देगा। जेमी Cansdale MSTest
5

मैं मुख्य रूप से NUnit, कुछ XUnit और कुछ MSTest का उपयोग किया है के लिए TestDriven.net के समर्थन के नवीनतम रिलीज के साथ पर्फ़ बढ़ जाती है पाने में कामयाब रहे है प्रकट होता है। वे कार्यक्षमता समतुल्य प्रतीत होते हैं, लेकिन मुझे एमएसटीएस्ट टेस्ट रनर पसंद नहीं है।यह विजुअल स्टूडियो में चलता है, इसलिए यह स्क्रीन को भीड़ देता है या जब भी मैं दृश्य स्टूडियो में टैब करता हूं तो दूसरी मॉनीटर पर जाता है। (मैं एक अन्य मॉनीटर पर न्यूटिट चलाता हूं, लेकिन जब भी मैं विजुअल स्टूडियो पर ध्यान केंद्रित करता हूं तो उस मॉनिटर पर सबकुछ शामिल नहीं होता है)। यह पता लगाने में कितना परीक्षण विफल रहा है और क्यों।

एनयूनीट एक परीक्षण विफल होने तक पृष्ठभूमि में चला सकता है, जिस बिंदु पर यह आपको ब्रेकिंग टेस्ट के बारे में जानकारी दिखाता है। यह लाल/हरा/रिफैक्टर आसानी से चलने के लिए आदर्श जैसा लगता है।

0

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

यदि आप एमएसटीएस्ट का उपयोग कर रहे हैं, तो आप इस सेटिंग को टूल्स> विकल्प> टेस्ट टूल्स> टेस्ट निष्पादन में बदल सकते हैं। "पुराने टेस्ट परिणाम की सीमा संख्या" को विजुअल स्टूडियो 2010 में डिफ़ॉल्ट रूप से 25 पर सेट किया गया है। मैं आमतौर पर इसे 1.

0

MSUnit वास्तविक निष्पादन वातावरण से अलग स्थितियों के तहत अपने परीक्षण मामलों को चलाता है। विशेष रूप से, तैनात फाइलें उन लोगों से अलग होती हैं जो आपके वास्तविक प्रोजेक्ट को चलाते समय तैनात की जाती हैं। नीदरहीन, MSUnit द्वारा कौन सी फाइलें तैनात की जाएंगी यह निर्दिष्ट करने के लिए [परिनियोजन इटिम] - एट्रिब्यूट है। इसलिए यदि आपके आवेदन, किसी भी बाहरी फ़ाइलों पर निर्भर करता है जैसे

  • डेटाबेस फ़ाइलों
  • डेटाबेस विन्यास फाइल
  • आवेदन विन्यास फाइल
  • ...

तो MSUnit नहीं है सही विकल्प, क्योंकि MSUnit परीक्षण कभी भी कवर नहीं करता है कि आपकी फाइल सिस्टम निष्पादन वातावरण में कैसा दिख रहा है। फ़ाइलों को तैनात करने के लिए विजुअल स्टूडियो प्रोजेक्ट फ़ाइल सेटिंग्स (हमेशा कॉपी, सामग्री इत्यादि) MSUnit धावक द्वारा अनदेखा किया जाता है। तो उन सेटिंग्स का परीक्षण नहीं किया जा सकता है।

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