Visual Studio 2019 突然需要 nuget Microsoft.NET.Test.Sdk 到 运行 xUnit 单元测试
Visual Studio 2019 suddenly requires nuget Microsoft.NET.Test.Sdk to run xUnit unit-tests
我正在使用 xUnit 来执行测试。我曾经使用 VS GUI 安装 xUnit Visual Studio 运行ner,xunit.runner.visualstudio
nuget 包到 运行 测试。
下面是VS中依赖树的xUnit相关分支。你可以清楚地看到 xUnit VS 运行ner 没有依赖关系:
Visual Studio 突然要求我安装 Microsoft.NET.Test.Sdk
nuget,以便在 GUI 中进行 运行 测试。有人知道为什么吗?
注:
- 我已经使用 VS 2019 一年多了,经常尽快更新。这个问题是昨天才出现的。我现在使用的是 v16.7.2。
在xunit.runner.visualstudio版本<=2.4.1
时,已经包含依赖Microsoft.NET.Test.Sdk
,以后的版本2.4.2
并且 2.4.3
已经删除了这种依赖性 Microsoft.NET.Test.Sdk
.
另外,不知道是不是最近VS更新需要这样的包导致的问题。从默认的 xunit
模板项目中,它默认包含包 Microsoft.NET.Test.Sdk
。 所以我认为 VS 需要这个包。
可能在某些特定情况下,没有这个包不会报错,但是follow-up就不会出现意外错误,所以安装这个包。
除了,不确定你是否安装了xunit.runner.visualstudio
版本<=2.4.1
已经有这样的包,然后在以后更新这个包VS 更新。
建议
1),尝试重新安装xunit.runner.visualstudio
nuget包,先卸载再安装2.4.1
.
版本
然后,关闭VS Instance,删除解决方案文件夹下的.vs
隐藏文件夹,bin
和obj
文件夹
2) 尝试更改项目的目标框架版本(它将根据目标框架版本安装任何默认的 nuget 包)。
Right-click 在您的项目上 Properties-->Application--> 更改 target framework先给别人再改回原来的。
此外,如果这些都不起作用,您应该与我们分享您的项目示例并提供更详细的信息,以帮助我们更快地解决问题.
更新 1
对于您更新的问题,或者您可以直接在您的项目上安装 nuget 包 Microsoft.NET.Test.Sdk。
或者将您的项目目标框架更改为net core
。
在 csproj 文件中使用:
<TargetFramework>netcoreapp3.1</TargetFramework>
然后,重建你的项目,你可以看到它下面的依赖。
我正在使用 xUnit 来执行测试。我曾经使用 VS GUI 安装 xUnit Visual Studio 运行ner,xunit.runner.visualstudio
nuget 包到 运行 测试。
下面是VS中依赖树的xUnit相关分支。你可以清楚地看到 xUnit VS 运行ner 没有依赖关系:
Visual Studio 突然要求我安装 Microsoft.NET.Test.Sdk
nuget,以便在 GUI 中进行 运行 测试。有人知道为什么吗?
注:
- 我已经使用 VS 2019 一年多了,经常尽快更新。这个问题是昨天才出现的。我现在使用的是 v16.7.2。
在xunit.runner.visualstudio版本<=2.4.1
时,已经包含依赖Microsoft.NET.Test.Sdk
,以后的版本2.4.2
并且 2.4.3
已经删除了这种依赖性 Microsoft.NET.Test.Sdk
.
另外,不知道是不是最近VS更新需要这样的包导致的问题。从默认的 xunit
模板项目中,它默认包含包 Microsoft.NET.Test.Sdk
。 所以我认为 VS 需要这个包。
可能在某些特定情况下,没有这个包不会报错,但是follow-up就不会出现意外错误,所以安装这个包。
除了,不确定你是否安装了xunit.runner.visualstudio
版本<=2.4.1
已经有这样的包,然后在以后更新这个包VS 更新。
建议
1),尝试重新安装xunit.runner.visualstudio
nuget包,先卸载再安装2.4.1
.
然后,关闭VS Instance,删除解决方案文件夹下的.vs
隐藏文件夹,bin
和obj
文件夹
2) 尝试更改项目的目标框架版本(它将根据目标框架版本安装任何默认的 nuget 包)。
Right-click 在您的项目上 Properties-->Application--> 更改 target framework先给别人再改回原来的。
此外,如果这些都不起作用,您应该与我们分享您的项目示例并提供更详细的信息,以帮助我们更快地解决问题.
更新 1
对于您更新的问题,或者您可以直接在您的项目上安装 nuget 包 Microsoft.NET.Test.Sdk。
或者将您的项目目标框架更改为net core
。
在 csproj 文件中使用:
<TargetFramework>netcoreapp3.1</TargetFramework>
然后,重建你的项目,你可以看到它下面的依赖。