6

के साथ काम कर रहे XUnit परीक्षण प्राप्त नहीं कर सकते हैं मेरे जीवन के लिए मुझे विजुअल स्टूडियो 2017 में नए एमएसबिल्ड-आधारित netcoreapp1.0 xunit प्रोजेक्ट टेम्पलेट से यूनिट परीक्षण नहीं मिल रहा है।विजुअल स्टूडियो 2017 आरसी

आवश्यकता इकाई परीक्षण दोनों दृश्य स्टूडियो के अंदर (devs के लिए) और फिर भी CLI पर dotnet test से स्वचालित निर्माण प्रक्रिया के लिए काम करने के लिए है, मैं या तो नहीं मिल सकता लगातार काम।

यहाँ मैं क्या करने की कोशिश की है:

एक मौजूदा समाधान में, एक नई परियोजना बना सकते हैं और चयन नेट कोर>XUnit टेस्ट परियोजना। दृश्य स्टूडियो से

परियोजना बिल्ड, डिफ़ॉल्ट परीक्षण प्रकट होता है और सफलतापूर्वक, अब powershell शीघ्र से dotnet test चलाने रन, मिलती है:

> dotnet test 
Test run for D:\...\bin\Debug\netcoreapp1.0\MyProj.dll(.NETCoreApp,Version=v1.0) 
dotnet exec needs a managed .dll or .exe extension. The application specified was 'C:\Program' 
csproj फ़ाइल के साथ

या डॉटनैट परीक्षण:

> dotnet test MyProject.csproj 
(same error as above) 

> dotnet test ..\MySolution.sln 
Couldn't find a project to run test from. Ensure a project exists in D:\... 
Or pass the path to the project 

अगर मैं जोड़ने xunit.runner.console या xunit.runner.msbuild nuget पैकेज, यह विजुअल स्टूडियो के अंदर से काम कर रहे यूनिट परीक्षणों को रोकता है।

मैं एक ही समय में दोनों काम कैसे कर सकता हूं?

धन्यवाद!

+0

@tommed, क्या आप इसे विजुअल स्टूडियो कमांड प्रॉम्प्ट से बना सकते हैं/चला सकते हैं? मुद्दा शायद इसलिए है क्योंकि वीएस 2017 में एमएसबिल्ड ऐप स्थानीय है, जिसका अर्थ है कि विशेष एनवी चर हैं जिनका उपयोग एमएसबिल्ड,। लक्ष्य और क्लास लाइब्रेरीज़ का उपयोग करने के लिए किया जाता है। –

+0

@MichaelBraude इसके लिए धन्यवाद। मैंने deeveloper कमांड प्रॉम्प्ट_ और _MSBuild कमांड प्रॉम्प्ट_ में भी ऐसा करने की कोशिश की है और वही त्रुटि प्राप्त करें - हालांकि अच्छा विचार! – tommed

+0

हालांकि नेट कोर के बारे में नहीं, मैं इसे एक टिप्पणी के रूप में पोस्ट कर रहा हूं: वीएस2017 पूर्ण नेट 4.5 फ्रेमवर्क यहां एक ही समस्या है: कोई यूनिट परीक्षण नहीं मिला। मुझे Nuget का उपयोग करके मेरी परियोजनाओं में से एक से 'xunit.runner.visualstudio' को अनइंस्टॉल करना और पुनर्स्थापित करना पड़ा। फिर समाधान पुनर्निर्माण, और परीक्षण पाए गए। उम्मीद है की यह मदद करेगा। – Sharky

उत्तर

7

बग आप कम पड़ रहा है पूर्वावलोकन 3 में वर्तमान और तय पूर्वावलोकन 4 में वे जब यह क्रियान्वित कमांड लाइन से बच नहीं किया है, और के बाद से dotnet.exe C:\Program Files\dotnet डिफ़ॉल्ट रूप से में स्थापित किया गया है, यह हमेशा विफल रहता है।

यदि आप पूर्वावलोकन 3 का उपयोग करना जारी रखना चाहते हैं, तो सबसे आसान काम-आसपास अपने सिस्टम को PATH पर्यावरण चर संपादित करना है, और C:\Program Files\dotnetC:\Progra~1\dotnet के साथ प्रतिस्थापित करें।

+0

संबंधित बग: https://github.com/dotnet/cli/issues/4832 –

+0

आप अद्भुत हैं - धन्यवाद !!!!! – tommed

6

मुझे पता है कि यह एक बहुत अच्छा जवाब नहीं है, लेकिन dotnet-test-xunit केवल project.json फ़ाइलों का समर्थन करता है। वीएस 2017 आपको csproj फ़ाइलों पर स्विच करने के लिए मजबूर करता है।

मैं XUnit ट्विटर फ़ीड पर यह पाया: आप w/नेट कोर VS2017 आर सी में उपयोग @xunit की कोशिश कर रहे हैं, dotnet-test-xunit हटाने और xunit.runner.visualstudio 2.2 बीटा 4 के बजाय का उपयोग करें।

+2

आपको इस जानकारी की आपूर्ति करने की सराहना करते हैं।मैं इस निष्कर्ष पर भी आया हूं कि 'dotnet-test-xunit' VS2017 को तोड़ता है -' xunit.runner.visualstudio' nuget पैकेज पहले से स्थापित है, लेकिन क्ली परीक्षण चलाने का कोई तरीका नहीं है। – tommed

2

नवीनतम RC.3 के साथ मैं परीक्षण नहीं खोज की जा रही के साथ मुद्दों कर रहा था, और पता चला कि आप चलाने के अंतर्निहित टेस्ट एक्सप्लोरर यह उत्पादन में कहा गया है कि Microsoft.DotNet.InternalAbstractions 1.0.0 याद आ रही है। यह .NET कोर के पिछले संस्करणों में भी जारी था, और समाधान वही है, पैकेज को Nuget से इंस्टॉल करें।

+0

यह xUnit के साथ परीक्षण से संबंधित मेरे मुद्दों को ठीक करता है। विजुअल स्टूडियो 2017 आरसी में आश्चर्यजनक रूप से प्रोजेक्ट से शुरू होने वाली त्रुटियों की मात्रा और उसके परीक्षणों के बाहर-बाहर-द-बॉक्स शामिल हैं। – Hekkaryk

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