2013-07-26 3 views
48

के कारण परियोजनाओं के बीच पार होने पर विफल रहा, मैंने हाल ही में Resharper 8 को अपडेट किया, और जब मैंने परियोजनाओं का एक सूट चलाने की कोशिश की। इन परीक्षणों में एकीकरण परीक्षण के दो सूट होते हैं जो दोनों वेबसाइट चलाने के लिए IISExpress का उपयोग करते हैं, वेब अनुरोध करते हैं और प्रतिक्रियाओं की जांच करते हैं।Resharper 8 परीक्षणों के माध्यम से NUnit चलाना AppDomain

अलगाव में उन्हें चलाना सफल है, और सभी परीक्षणों को चलाने से पहले सफल होगा। हालांकि, ऊपर उठने के बाद परीक्षण के दूसरे सेट में असफल हो जाएगा।

जांच से पता चला है कि AppDomain.CurrentDomain.BaseDirectory बदलने के बजाए चलाने के लिए पहले परीक्षण के रूप में रह रहा है। चूंकि एकीकरण परीक्षण दो परियोजनाओं से बना है, इसलिए यह दूसरी परियोजना को विफल कर रहा है क्योंकि यह आवश्यक कॉन्फ़िगरेशन फ़ाइलों में से कोई भी नहीं ढूंढ सकता है।

मुझे Resharper 8 में इस अलग व्यवहार को अक्षम करने के लिए कोई विकल्प नहीं मिल रहा है, जो /domain:Single नुनिट ध्वज का व्यवहार प्रतीत होता है। Resharper 7 के लिए डाउनग्रेडिंग की कमी, क्या किसी को इसका समाधान पता है? और क्या यह Resharper 8 या एक बग का एक इरादा व्यवहार है?

उत्तर

55

वर्कअराउंड:

आप दृश्य स्टूडियो में करने की कोशिश की ReSharper के लिए जा रहा है -> विकल्प -> उपकरण -> यूनिट टेस्टिंग

बदलें सेटिंग "समानांतर में 1 विधानसभाओं के लिए दौड़ "एक उच्च संख्या के लिए। मैंने प्रत्येक टेस्ट प्रोजेक्ट के लिए एक की कोशिश की। मैक्स कोर की संख्या है, मुझे लगता है।

counterintuitive मुझे पता है, लेकिन यह मेरे लिए काम किया है और मैं नाकाम रहने के परीक्षण

कारण एक कैशिंग अनुकूलन बग में AppDomain.CurrentDomain.BaseDirectory उपयोग कर रहा हूँ में ReSharper 8. कार्य निर्देशिका ठीक से सेट नहीं है। शायद समानांतर में चलना प्रत्येक परीक्षण के लिए एक अलग प्रक्रिया बनाता है, इसलिए वे एक दूसरे की सेटिंग्स पर यात्रा नहीं करते हैं।

फिक्स जेटब्रेन्स का दावा है कि इस संस्करण में तय हो जाएगा 8.0.1

अद्यतन: एक नई इकाई परीक्षण विकल्प Resharper 8.1में जोड़ा इस परिदृश्य को समायोजित करने के है। । यह ReSharper पर खोजें -> विकल्प -> उपकरण -> यूनिट टेस्टिंग -> "परीक्षण के साथ प्रत्येक विधानसभा के लिए उपयोग अलग AppDomain

+1

+1 यहां एक ही समस्या है। आपका सुझाया गया सेटिंग परिवर्तन भी मेरे लिए काम करता है। – Andomar

+0

धन्यवाद, जिसने मुझे भी मदद की। यह समस्या 8.0.1 बीटीडब्ल्यू में तय नहीं है। हालांकि बाद के संस्करण में तय किया जा सकता है। –

+0

इस त्रुटि को लक्षित करने के लिए एक और विशिष्ट सेटिंग के लिए @Paul स्टुअर्ट का उत्तर नीचे देखें। (हालांकि यह कामकाज काम करता है)। – stannius

6

यह अब Resharper 8.0.2 में तय किया गया है: http://youtrack.jetbrains.com/issue/RSRP-374143#comment=27-572929

मत भूलना टिक नया विकल्प ReSharper | विकल्प | उपकरण | यूनिट परीक्षण |। प्राप्त करने के लिए यह काम करता है "परीक्षण के साथ प्रत्येक विधानसभा के लिए अलग AppDomain का उपयोग करें"

यानी यूनिट परीक्षण सेटिंग्स में अब एक नया विकल्प है।

+2

यह मेरे लिए Resharper 8.1 –

+1

में समस्या को हल करता है पुन: उत्पादित और निश्चित लेकिन रीशेर्पर सेटिंग्स में नया विकल्प जांचना चाहिए। – SpaceBison

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