在安装了C#扩展的VSCode 1.17.2版本中,我通过
通过下面这两个VSCode任务,我可以成功构建和运行测试;也就是说,所有内容都能构建,单元测试运行并且通过。
dotnet new mstest
向解决方案文件夹添加了一个MSTest项目,并使用dotnet add <project_path>
引用被测试的程序集。通过下面这两个VSCode任务,我可以成功构建和运行测试;也就是说,所有内容都能构建,单元测试运行并且通过。
{
"version": "2.0.0",
"tasks": [
{
"taskName": "build",
"command": "dotnet build src/tests/tests.csproj",
"type": "shell",
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
"reveal": "silent"
},
"problemMatcher": "$msCompile"
},
{
"taskName": "test",
"command": "dotnet test src/tests/tests.csproj",
"type": "shell",
"group": {
"kind": "test",
"isDefault": true
},
"presentation": {
"reveal": "silent"
},
"problemMatcher": "$msCompile"
}
]
}
然而,我无法通过集成调试器命中断点或以其他方式逐步执行单元测试。我想到的最接近的启动配置可以运行测试,但调试器不会命中断点或连接到任何内容。
{
"name": "test",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
"program": "dotnet",
"args": ["test"],
"cwd": "${workspaceRoot}/src/tests",
"stopAtEntry": true,
"console": "internalConsole"
}
我可能会错过一些基础知识,但是如何启动或附加VSCode C#调试器到MSTest单元测试呢?
dotnet test
上使用"problemMatcher": "$msCompile"
,你能用吗? - Anthony Mastrean