2017-01-31 11 views
10

में सभी परीक्षणों को कैसे चलाएं वीएस कोड का नवीनतम संस्करण Tyler Long's answer पर Debugging xunit tests in .NET Core and Visual Studio Code पर एक एकल परीक्षण चलाने का एक आसान तरीका प्रदान करता है।विजुअल स्टूडियो कोड

हालांकि, मैं देख रहा हूँ कि कैसे मैं सभी परीक्षणों वी.एस. संहिता में टेस्ट स्वीट वर्ग (डिबग के बिना) में निहित चला सकता हूँ?

एक ही रास्ता मैंने पाया launch.json के बाद एक के रूप में एक विशिष्ट विन्यास को जोड़ने था, लेकिन जो मैं केवल डिबग में चला सकते हैं (मैं डिबग के बिना इसे चलाने के लिए चाहते हैं):

{ 
    "name": ".NET Core Xunit tests", 
    "type": "coreclr", 
    "request": "launch", 
    "preLaunchTask": "build", 
    "program": "/usr/local/share/dotnet/dotnet", 
    "args": ["test"], 
    "cwd": "${workspaceRoot}/test/MyProject.Tests", 
    "externalConsole": false, 
    "stopAtEntry": false, 
    "internalConsoleOptions": "openOnSessionStart" 
} 

उत्तर

8

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

आप दबाते हैं Cmd - शिफ्ट - पी कमान पैलेट खोलने के लिए और टाइप "परीक्षण" करने के लिए, आप भागो टेस्ट टास्क आदेश चला सकते हैं। डिफ़ॉल्ट रूप से, यह कुछ भी नहीं है, लेकिन आप tasks.json संपादित कर सकते हैं यह बताने के लिए आप के लिए dotnet test चलाने के लिए करने के लिए:

tasks.json

{ 
    "version": "0.1.0", 
    "command": "dotnet", 
    "isShellCommand": true, 
    "args": [], 
    "tasks": [ 
    { 
     "taskName": "build", 
     "args": [ ], 
     "isBuildCommand": true, 
     "showOutput": "silent", 
     "problemMatcher": "$msCompile" 
    }, 
    { 
     "taskName": "test", 
     "args": [ ], 
     "isTestCommand": true, 
     "showOutput": "always", 
     "problemMatcher": "$msCompile" 
    } 
    ] 
} 

इन दो कार्य परिभाषाएँ भागो लिंक करेगा कार्य और रन स्टूडियो कोड क्रमशः विजुअल स्टूडियो कोड में dotnet build और dotnet test पर आदेश चलाएं।

8

सभी परीक्षण चलाने के लिए एक बहुत ही आसान तरीका है:

  1. .NET Core Test Explorer विस्तार
  2. ओपन वी.एस. संहिता में एक .NET कोर परीक्षण परियोजना स्थापित करें, या करने के लिए नेट कोर के फ़ोल्डर पथ dotnet-test-explorer.testProjectPath सेट settings.json
  3. एक्सप्लोरर देखने का नेट टेस्ट Explorer में में परीक्षण परियोजना, सभी परीक्षणों स्वचालित रूप से पता लगाया जाएगा, और आप सभी परीक्षण या एक निश्चित परीक्षण
चलाने में सक्षम हैं

test-explorer

0

@ नेट बार्बेटिनी के उत्तर के समान, लेकिन नेट कोर मानक 2.0 (netcoreapp2.0) के लिए।

{ "version": "2.0.0", "tasks": [ { "label": "test", "command": "dotnet test path/to/test-project.csproj", "type": "shell", "group": "test", "presentation": { "reveal": "silent" }, "problemMatcher": "$msCompile" } ] }

2

GraehamF के जवाब पर निर्माण करने के लिए, विन्यास डॉटनैट 2.0 के लिए tasks.json में आवश्यक अलग है।

{ 
"version": "2.0.0", 
"tasks": [ 
    { 
     ... 
    }, 
    { 
     "label": "test", 
     "command": "dotnet", 
     "type": "shell", 
     "group": "test", 
     "args": [ 
      "test", 
      "${workspaceFolder}/testprojectfolder/testprojectname.csproj" 
     ], 
     "presentation": { 
      "reveal": "silent" 
     }, 
     "problemMatcher": "$msCompile" 
    } 
] 

मैंने पाया जब दृश्य स्टूडियो और वी.एस. कोड दोनों स्थापित कर रहे हैं, कमांड संपत्ति में csproj संदर्भ (GraehamF के जवाब के रूप में) डाल हुई कि दृश्य स्टूडियो में खोला जा रहा परीक्षण वी.एस. कोड भीतर चलाया जा रहा बजाय।

(मैं इसे एक टिप्पणी में डालता, लेकिन मेरे पास पर्याप्त प्रतिष्ठा अंक नहीं हैं।)

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