Visual studio 2015 如何在VisualStudioOnline构建中运行Xunit

Visual studio 2015 如何在VisualStudioOnline构建中运行Xunit,visual-studio-2015,tfsbuild,azure-devops,xunit,xunit.net,Visual Studio 2015,Tfsbuild,Azure Devops,Xunit,Xunit.net,我的visual studio online帐户中有VS2015 RC项目。在这个项目中,测试是用xunit编写的 在这个项目中,我添加了以下nuget包 <package id="xunit" version="2.1.0-beta3-build3029" targetFramework="net46" userInstalled="true" /> <package id="xunit.abstractions" version="2.0.0" targetFram

我的visual studio online帐户中有VS2015 RC项目。在这个项目中,测试是用xunit编写的

在这个项目中,我添加了以下nuget包

  <package id="xunit" version="2.1.0-beta3-build3029" targetFramework="net46" userInstalled="true" />
  <package id="xunit.abstractions" version="2.0.0" targetFramework="net46" userInstalled="true" />
  <package id="xunit.assert" version="2.1.0-beta3-build3029" targetFramework="net46" userInstalled="true" />
  <package id="xunit.core" version="2.1.0-beta3-build3029" targetFramework="net46" userInstalled="true" />
  <package id="xunit.extensibility.core" version="2.1.0-beta3-build3029" targetFramework="net46" userInstalled="true" />
  <package id="xunit.runner.visualstudio" version="2.1.0-beta3-build1069" targetFramework="net46" userInstalled="true" />

有了它,我可以在VisualStudio测试窗格中查看和运行测试

现在,在联机配置中,我无法添加VisualStudio测试操作。但它似乎只是在寻找MSTestTests

在日志中,我还可以找到:

警告:使用隔离模式运行 在runsettings中启用了作为诊断数据适配器的测试。使用 /inIsolation参数用于抑制此警告

警告:中没有可用的测试 C:\a\7588a0f7\CRM\src\BoundContextes\SharedKernel\SharedKernel.Tests\bin\Debug\SharedKernel.Tests.dll。 确保已安装的测试发现者和执行者、平台& 框架版本设置正确,请重试

在这个动作中,我可以看到有一个“自定义测试适配器的路径”。我想我必须把它设置成XUnit测试适配器?但我不知道我应该进入那里,也不知道从哪里得到这个


与您一样,我正在使用MSBuild生成解决方案(生成服务器上没有安装visual studio)

这就是我所做的

  • 在测试项目中安装nuget包
  • 通过取消对
    AfterBuild
    目标的注释并添加以下任务来修改项目文件(注意xml文件名,这对下一步很重要)

    
    
    还要注意目标条件。这会阻止在从visualstudio构建时运行目标,因为您可能正在使用
    xunit.runner.visualstudio

  • 在MSBuild步骤之后添加“发布测试结果”步骤,并根据上一步骤中的操作为结果设置正确的文件名
  • 在提交更改并对新生成排队之后,您应该在生成的摘要选项卡上看到测试结果


    如果仍要在VST上使用
    xunit.runner.visualstudio
    ,请按照中的步骤进行操作。

    您应该将自定义测试适配器的路径设置为“packages”文件夹的位置

    例如,我将我的包放在我的repo根目录中的解决方案文件旁边,因此我将路径设置为:

    $(Build.SourcesDirectory)\packages
    

    我遇到了与您相同的问题,但使用ms test编写的测试。不知道这个问题是否与.NET4.6有关,但当我们升级并在解决方案中进行一些项目更改时,它停止了工作。
    $(Build.SourcesDirectory)\packages