.net - 設定 - Visual Studioコードですべてのテストを実行する方法




visual studio 単体テストの作成 表示されない (3)

@Nate Barbettiniの答えに似ていますが、.Net Core Standard 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" } ] }

最新のバージョンのVSコードは、 .NET CoreおよびVisual Studio Codeのxunitテストのデバッグに関する質問に対するTyler Longの回答を指摘しているように、既に単一のテストを実行する簡単な方法を提供しています。

しかし、私はどのようにVSコード(デバッグなし)でテストスイートクラスに含まれているすべてのテストを実行することができます探していますか?

私が見つけた唯一の方法はlaunch.jsonに以下のような特定の設定を追加すること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"
}

GraehamFの答えで構築するために、dotnet 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"
    }
]

私は、Visual StudioとVS Codeの両方がインストールされているときに、csprojリファレンスをコマンドプロパティ(GraehamFの回答のように)に置くと、VSコード内でテストが実行されるのではなく、Visual Studioが開かれることがわかりました。

(私はこれをコメントに入れましたが、十分な評判ポイントがありません。)


ターミナルでdotnet testを実行すると、プロジェクト内のすべてのテストを実行できます。 これは既に端末を開いている場合に便利ですが、Visual Studioコードにも追加できます。

Cmd - Shift - Pを押してコマンドパレットを開いて "test"と入力すると、 テストタスク実行コマンドを実行できます。 デフォルトではこれは何もしませんが、 tasks.jsonを編集して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"
    }
  ]
}

これらの2つのタスク定義は、Visual StudioコードのRun Build TaskコマンドとRun Test Taskコマンドをそれぞれdotnet builddotnet testにリンクします







xunit.net