val*_*orl 19 unit-testing test-explorer .net-core visual-studio-2017
谁能帮助我让VS2017与.NET Core测试项目一起工作?
我尝试从VS 2017模板为.NET Core创建MSTest和xUnit单元测试项目.它们都不适用于测试资源管理器(未发现),但从dotnet test项目文件夹运行可以正常工作.
重现步骤:
Unit Test Project (.NET Core)或xUnit Test Project (.NET Core)模板Run All 此时,"输出"窗口应该告诉您已发现0测试
.csproj 文件:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp1.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.0.0" />
<PackageReference Include="xunit" Version="2.2.0" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" />
</ItemGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)
如果我尝试从面向.NET Framework的模板(完整版,而不是.NET Core)创建MSTest单元测试项目,那么它可以工作.
有任何想法吗?
val*_*orl 14
最后,通过改变我的系统环境解决了这个问题PATH.从变量C:\Program Files\dotnet\到C:\Progra~1\dotnet\,因为回答无法获得的xUnit测试与Visual Studio 2017年RC工作
感谢Alexey在评论中提出建议:)
我想我经历过同样的行为.尝试构建您的解决方案,以便VS可以发现您的测试.否则请分享您测试csproj文件以确保您引用正确的包.我的是:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp1.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.0.0" />
<PackageReference Include="xunit" Version="2.2.0" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" />
</ItemGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)
更新:我玩了一下,看起来VS没有找到测试<OutputType>Exe</OutputType>
更新2:尝试在csproj中添加以下内容,因为我看到VS在某些情况下添加了.
<ItemGroup>
<Service Include="{82a7f48d-3b50-4b1e-b82e-3ada8210c358}" />
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)
我遇到了这个问题,VS 2017 没有发现 .NET Core 上的 MSTest 单元测试。
测试输出仅报告它发现了零测试。
在dotnet test MyProject.csproj -t命令提示符下运行时,它提示我没有安装正确的 .NET Core 运行时来匹配项目的 RuntimeFrameworkVersion。
安装最新的 VS 2017 更新和 .NET Core 运行时解决了该问题。
| 归档时间: |
|
| 查看次数: |
8800 次 |
| 最近记录: |