Azure devops VSTest任务未运行测试计划中的.NET Core 2.1 xUnit测试

Azure devops VSTest任务未运行测试计划中的.NET Core 2.1 xUnit测试,azure-devops,xunit,azure-pipelines-release-pipeline,vstest,.net-core-2.1,Azure Devops,Xunit,Azure Pipelines Release Pipeline,Vstest,.net Core 2.1,我正在尝试在VSTS中创建一个发布管道,它按照测试计划中的指定运行我的xUnit测试 长话短说:我不能让它工作 我正在使用的内容: Azure DevOps(前身为VSTS) Visual Studio测试任务(v2.*) 针对.NETCore2.1的测试项目 xunit 2.4和xunit.runner.visualstudio 2.4 在Azure DevOps中,我定义了一个测试计划,该计划包含一个测试套件,该套件包含一个测试,该测试具有一个指向我的xUnit测试的相关自动化。 我必须

我正在尝试在VSTS中创建一个发布管道,它按照
测试计划中的指定运行我的xUnit测试

长话短说:我不能让它工作

我正在使用的内容:

  • Azure DevOps(前身为VSTS)
  • Visual Studio测试任务(v2.*)
  • 针对.NETCore2.1的测试项目
  • xunit 2.4和xunit.runner.visualstudio 2.4
在Azure DevOps中,我定义了一个
测试计划
,该计划包含一个
测试套件
,该套件包含一个
测试
,该测试具有一个指向我的xUnit测试的
相关自动化
。 我必须使用RESTAPI将测试代码链接到所描述的
test

我可以在可视化设计器中为VSTest任务选择
Test

运行发布管道时,VSTest任务失败,并显示以下错误消息:

DiscoveryMessage:System.IO.FileNotFoundException:找不到D:\a\r1\a\Foo.tests.dll的测试。确保测试项目具有包“Microsoft.NET.test.Sdk”的nuget引用,并且框架版本设置适当。使用/diag选项重新运行以进一步诊断。

Foo.Tests.dll的路径正确,所有必需的文件也会被复制

  • 我在
    .runsettings
    文件中明确指定了框架版本(因为在使用
    测试计划
    选项时,
    其他控制台选项
    不起作用)
  • 指定了自定义测试适配器的路径
  • 使用工具安装程序安装的
    Visual Studio 2017
    选项
  • 添加了一个
    .NET Core工具安装程序
    ,以安装正确的.NET Core SDK
  • …以及我能想到的任何其他设置组合
错误消息仍然相同


你知道我可能遗漏了什么吗?在此,我们将非常感谢您的帮助

又过了几个小时,我们偶然发现一个网页,上面说您不必复制测试项目的二进制文件作为VSTest任务的输入,而是发布它。当您将
vstest.console.exe
指向本地计算机上的二进制文件时,它会平稳运行,因此这一点从未出现在您的脑海中


更新:我们必须在构建管道的末尾添加一个,并使发布管道接收已发布的工件


您是否引用了“”Microsoft.NET.Test.Sdk“在你的项目中?有没有可能分享一个项目样本让我们检查这个问题?你有网站的链接吗?@MrShoubs抱歉,我再也找不到了。你能更具体一点吗?我遇到了同样的问题,但不确定你采取了什么措施来解决;在本例中,我已经有了发布工件的步骤。