没有找到测试.确保已安装的测试发现者和执行者,平台和框架版本设置适当,然后重试

Tor*_*ard 77 tfs unit-testing build tfs-2015

我正在将现有解决方案升级到.Net 4.6.1,并且无法在服务器构建期间运行我们的单元测试.在本地,它们按预期运行,并将框架版本翻转回.Net 4.5.1,使它们在服务器上再次运行.

我收到以下错误:

没有找到测试.确保已安装的测试发现者和执行者,平台和框架版本设置适当,然后重试.

我在更简单的设置中重现了这个问题:

  • 使用单个C#单元测试项目进行两个测试的解决方案(一个失败,一个失败).
  • 使用默认模板(TfvcTemplate.12.xaml)创建XAML定义
  • 安装了Visual Studio Enterprise 2015 Update 1的TFS 2015 Update 1 XAML构建服务器(具有六个类似的服务器并且都产生相同的结果)

rub*_*ine 50

您可以尝试将测试设置中的默认处理器体系结构从X86更改为X64.就我而言,这就是问题所在.

如果要测试的项目的平台目标设置为,则会发生这种情况x64.

测试设置的屏幕截图


Nic*_*ino 32

我的构建也没有找到测试.我找到测试的设置和解决方案如下.

我使用VSTS(Visual Studio Team Services)并具有配置为在每次构建时刷新NUGET包的构建.我正在使用NUnit并发现运行以下NUGET命令(从Visual Studio中的包管理器控制台)将NUnitTestAdapter库添加到我的测试项目中,并且packages.config中的检查使测试在我的VSTS构建中运行.

Install-Package NUnitTestAdapter
Run Code Online (Sandbox Code Playgroud)

正如Maurice在NENit3的这篇文章的评论中提到的那样使用以下NUGET包(在链接上寻找其他工具.即:dotnet CLI和Paket CLI)

Install-Package NUnit3TestAdapter
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.

  • 我目前也在使用VSTS.正如我所说,我添加了NUnit3TestAdapter(因为我使用的是NUnit 3.8.1),这个解决方案解决了我的问题.谢谢 :-) (9认同)

woo*_*hoo 18

在我的情况下,不得不:

1)将测试项目转换为netcore 2.0(是netstandard 2.0)

2)添加nuget包 xunit.runner.visualstudio

参考:http: //www.neekgreen.com/2017/11/20/xunit-no-test-is-available/

  • 在我的例子中是一个 .net 4.6.1 项目,所以唯一缺少的是 xunit runner。安装它并工作。 (4认同)
  • 同样的问题与我同在.我正在使用带有.net核心的xunit (2认同)
  • 和胡安一样。仅缺少跑步者包。在测试项目的包管理器中运行它解决了这个问题: install-package xunit.runner.visualstudio (2认同)

小智 11

我收到此错误并能够解决它.

  1. 我使用Visual Studio Professional 2017
  2. 在VS中,我导航到工具 - >扩展和更新
  3. 在菜单的顶部,我注意到我的NUnit适配器已被禁用
  4. 我点击了[Enable]按钮
  5. 我能够毫无错误地启动测试.


qua*_*sar 9

我正在使用MSTest.对我来说,它是版本错配并缺少另一个依赖包 -

1)我的包文件夹仅包含MSTest.TestFramework.1.2.1包.在我的项目文件(.csproj)中,目标名称中的引用是MSTest.TestAdapter.1.2.0包,该包在包文件夹中不存在.我的packages.config也引用了MSTest.TestFramework.1.2.0.

2)所以我从nuget包管理器安装了MSTest.TestAdapter.1.2.0,并在项目和包文件中将MSTest.TestFramework版本与1.2.0对齐.最后,我在参考中添加了Microsoft.VisualStudio.TestPlatform.TestFramework和Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.

一切都很好.希望这能有所帮助.

  • 我的似乎找到了测试,但是是的,真正的问题是缺少“ MSTest.TestAdapter”。没有好的错误或警告(VS2017 15.8)。尽管没有出现在测试浏览器中,但所有测试都看起来不错,尽管未找到测试。....所以当我执行“安装程序包MSTest.TestAdapter”时,突然我的测试按预期运行了。谢谢女士-浪费了3个小时........... (2认同)
  • 安装 MSTest.TestAdapter 1.4.0 在 VS 2019 中为我完成了。多亏了你,我只浪费了 30 分钟。 (2认同)

Csa*_*007 6

此问题再次出现在Visual Studio 2017中.很可能是另一个错误,但结果相同.

似乎有效的一种解决方法是从受影响的计算机上卸载Microsoft Visual Studio 2017远程调试程序.


rat*_*rus 5

我在使用 .Net 4.6.2 的 VSTS 中遇到了同样的问题。如果您从 VSTS 控制台输出中看到这一点,则 @Sushil 提供的解决方法仍然适用于 VSTS 并且是需要的。不幸的是,微软提供的“测试程序集”任务通过了,所以你真的不知道有问题,除非你检查输出并发现你的测试没有实际执行!

VSTS 测试修复


n.s*_*aei 5

我通过重新安装相关的NuGet包项目的所有测试固定的这个问题: XunitXunit.runner.vistualstudioMicrosoft.Net.Test.Sdk


小智 5

  1. 从 NUGET 包安装 Nunit 和 NUnitTestAdapter 最新版本。
  2. 转到 -> 测试 -> 测试设置 -> 默认处理器架构 -> 更改为 X64
  3. 构建解决方案。
  4. 这将解决单元测试中的运行测试和调试器问题,它将开始工作。


jwa*_*980 5

我会将我的解决方案扔到堆上。就我而言,我将几个项目及其测试项目添加到现有解决方案中。我们正在使用 MSTest。解决方案上启用了先前的 UnitTest.testsettings 文件,导致兼容性问题。

单击设置文件删除了检查,并且我的测试测试运行成功。

在此输入图像描述


J-h*_*-ho 5

使用 net6.0 targetFramework,我将这些包添加到 .csproj 文件中:

<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.10.0" />
<PackageReference Include="MSTest.TestAdapter" Version="2.2.5" />
<PackageReference Include="MSTest.TestFramework" Version="2.2.5" />
Run Code Online (Sandbox Code Playgroud)

之后它开始工作。早期版本可能与net6.0不兼容。

请检查适用于您的 .NET 版本的软件包的最新版本,例如来自 nuget.org


Pat*_*SFT 1

这是 .Net 4.6 现在的一个已知问题。

无法运行 .Net 4.6.x 单元测试作为使用 TFS 2015 UPdate1 的 XAML TFS 构建的一部分 源:https ://connect.microsoft.com/VisualStudio/feedback/details/2245723

这里有一个类似的问题供您参考:Unable to run .Net 4.6 Unittests of TFS 2015 XAML build server

  • 嗨帕特里克。您提供的两个链接都是我打开的案例,所以我不会相信它们作为参考;-)。 (8认同)