Debugging MSTest Unittests in VisualStudio Code

旧街凉风 提交于 2019-12-20 01:39:28

问题


I am trying to use Visual Studio Code to Debug a MSTest unit test project. But the tests just run and the breakpoint is never reached.

Here is my launch.json:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": ".NET Core Test (console)",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            "program": "C:\\Program Files\\dotnet\\dotnet.exe",
            "args": ["test"],
            "cwd": "${workspaceRoot}",
            "console": "internalConsole",
            "stopAtEntry": false,
            "internalConsoleOptions": "openOnSessionStart"
        },
        {
            "name": ".NET Core Attach",
            "type": "coreclr",
            "request": "attach",
            "processId": "${command:pickProcess}"
        }
    ]
}

How can I debug a unit test (MSTest)? This same problem exists for XUnit.


回答1:


Try https://github.com/Microsoft/vstest-docs/blob/master/docs/diagnose.md#debug-test-platform-components (assumes you're using dotnet-cli tools 1.0.0)

> set VSTEST_HOST_DEBUG=1
> dotnet test
# Process will wait for attach
# Set breakpoint in vscode
# Use the NETCore attach config from vscode and pick the dotnet process



回答2:


If you are using the latest version of VS Code (I'm using v1.29.0), debugging unit test is in-built feature.

You need to first build the solution dotnet build for the test run & debug options to appear.




回答3:


Try and reload VS Code, worked for me. Press Ctrl+Shift+P which opens the command palette and then :

Reload Window




回答4:


Before building, remember to include in your .csproj file

<GenerateProgramFile>false</GenerateProgramFile>

or else it will not know what to run...

Program.cs(160,21): error CS0017: Program has more than one entry point defined. Compile with /main to specify the type that contains the entry point. [/Users/.../Fraction.csproj]


来源:https://stackoverflow.com/questions/43210794/debugging-mstest-unittests-in-visualstudio-code

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!