2015-09-02 14 views
6

मुझे एनयूनीट के माध्यम से मेरे परीक्षण चलाने में समस्या आती है। मुझे नहीं पता कि क्यों प्रत्येक टेस्ट दो बार चलता है। मुद्दा यह है कि एक और लैपटॉप पर यह आमतौर पर केवल एक बार चलता है।नुनिट प्रत्येक टेस्ट को दो बार चलाता है

क्या किसी को भी एक ही समस्या है और पता है कि इससे कैसे निपटें?

उत्तर

0

समस्या आमतौर पर उत्पन्न होती है जब आप एक परीक्षण कंटेनर (.dll) कई बार लोड करते हैं।

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

बिन फ़ोल्डरों से अपने परीक्षण कंटेनर लोडिंग को सीमित करने का प्रयास करें।

+0

असल में यह काम नहीं करता है। और क्यों अन्य लैपटॉप पर यह उचित काम करता है लेकिन इस पर नहीं। – MrPug

+0

क्या आपने समाधान फ़ोल्डर के अंदर डीएलएल फाइलों की तलाश की थी? आप दो अलग-अलग विन्यासों के लिए भी निर्माण कर सकते हैं, जैसे कि बिन \ रिलीज + बिन \ डीबग –

+0

बस केवल एक के लिए। – MrPug

7

मुझे एक ही समस्या थी। मेरे मामले में, मेरे पास Visual Studio extension और न्यूटिट टेस्ट रनर के NuGet package दोनों स्थापित थे। ऐसा लगता है कि वे दोनों परीक्षण निष्पादित कर रहे थे, जिसके परिणामस्वरूप परीक्षण दो बार चल रहे थे।

विजुअल स्टूडियो एक्सटेंशन को अनइंस्टॉल करने से समस्या हल हो गई।

+0

मेरे पास विजुअल स्टूडियो एक्सटेंशन और न्यूजेट पेज दोनों हैं। Nuget packaget को हटाने से मेरी समस्या हल नहीं होती है। मैं विपरीत कोशिश करूंगा। –

+0

यदि उपर्युक्त आपकी समस्या को ठीक नहीं करेगा, तो ** नियंत्रण और सुविधाओं ** में अपने नियंत्रण कक्ष में एक नज़र डालें और वहां से नुनिट स्थापना को अनइंस्टॉल करें। –

+0

मेरे लिए, मैंने nuget पैकेज को अनइंस्टॉल किया और वीएस को पुनरारंभ किया। – curob

0

परीक्षण की दौड़ को भी डुप्लीकेट किया जा सकता है जब अनुक्रमिक परीक्षणों में गलती से एक ही परीक्षण पैरामीटर होते हैं।

[Test, Sequential] 
      public void Integr_MController_DeleteGet_ReturnsViewAndModel(
[Values("[email protected]", "[email protected]")] string firstEmail, 


[Values("[email protected]", "[email protected]")] HTTPstring updatedEmail) {test code} 

एक ही परीक्षण को दो बार चलाएगा और टेस्टएक्सप्लोरर में उसी परीक्षण के रूप में दिखाई देगा।

0

मुझे एक समान समस्या थी जहां विजुअल स्टूडियो NUnit3 धावक के साथ परीक्षण चला रहा था, परीक्षण केवल एक बार चलता है लेकिन NUnit3-Command.exe के साथ कमांड लाइन में चलते समय, परीक्षण दो बार चलाया जाएगा। मैंने इस तरह का पीछा करने में बहुत लंबा रास्ता बिताया। मैंने देखा कि कमांड लाइन धावक रिपोर्ट कर रहा था कि 2 परीक्षण चलाए गए थे और निष्कर्ष पर पहुंचे कि यह डीएलएल में एक मुद्दा था। यह पागल लग सकता है लेकिन मैंने अपने सभी टेस्ट कोड को एक नई कक्षा में कॉपी किया है, पुरानी, ​​संकलित हटा दी है और परीक्षण अब दोनों परिदृश्यों में एक बार चलता है।

0

मेरे मामले में, इसमें बेस क्लास और व्युत्पन्न वर्ग दोनों टेस्टफिक्चर विशेषता थी। व्युत्पन्न वर्ग से सभी परीक्षण दो बार दौड़ेंगे।

केवल बेस क्लास पर विशेषता डालने से इसे फिक्स्ड करें।

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