C# Net内核中xUnit测试的OpenCover

C# Net内核中xUnit测试的OpenCover,c#,unit-testing,xunit,opencover,test-coverage,C#,Unit Testing,Xunit,Opencover,Test Coverage,我的VS2017.Net核心解决方案中有两个项目 应用程序(dll) 应用程序测试(dll) 在应用程序中,我有带有classService1的Service1.cs,在Application.Test中,我有带有Service1的xUnit单元测试的Service1.Test.cs。在Application.Test.csproj文件中,我引用了如下应用程序 <ItemGroup> <ProjectReference Include="..\Application.c

我的VS2017.Net核心解决方案中有两个项目

  • 应用程序(dll)
  • 应用程序测试(dll)
在应用程序中,我有带有class
Service1
的Service1.cs,在Application.Test中,我有带有
Service1
的xUnit单元测试的Service1.Test.cs。在Application.Test.csproj文件中,我引用了如下应用程序

<ItemGroup>
  <ProjectReference Include="..\Application.csproj" />
</ItemGroup>

但是我得到了Service1.Test自身覆盖的结果-看起来OpenCover根本没有“看到”应用程序项目和Service1类。

您需要将以下项目添加到.csproj文件中

<PropertyGroup>
  <DebugType>full</DebugType>
</PropertyGroup>

满的

Application.csproj文件和Application.Test.csproj文件都需要。

花点时间阅读帮助中心中的。堆栈溢出上的格式设置与其他站点不同。你的文章越好看,其他人就越容易阅读和理解。我看不出OpenCover在这里是如何使用的-OpenCover不是dotnet.exe的一部分,而是一个单独的工具。请展示所有步骤。还可以将我使用的dotnet.exe作为“目标”,将Application.test“”的“测试”路径作为“targetarguments”。我还尝试将xunit.console用作“目标”,将“Application.Test.dll”用作“targetarguments”,但出现了类似“assembly has not available tests”之类的错误(抱歉,我现在无法澄清错误)。
<PropertyGroup>
  <DebugType>full</DebugType>
</PropertyGroup>