首页 > 解决方案 > 转到测试 (F12) 在 Visual Studio 的测试资源管理器中不起作用

问题描述

当我单击 Go To Test 或使用 F12 时,没有任何反应。这发生在 VS2019 中的 SpecFlow 测试中。这是一个问题,因为很难在 *.feature 文件中手动找到测试。

我有什么办法让它重新开始工作吗?

PS我发现https://github.com/SpecFlowOSS/SpecFlow/issues/1457中描述的类似问题

编辑:我正在使用 VS2019 16.8.5、.NET Framework 4.8,我的 csproj 使用旧的 XML 格式,并且我正在使用*.feature.cs 不受源代码控制的 SpecFlow 功能。

  <Import Project="..\packages\SpecFlow.Tools.MsBuild.Generation.3.0.225\build\SpecFlow.Tools.MsBuild.Generation.targets" Condition="Exists('..\packages\SpecFlow.Tools.MsBuild.Generation.3.0.225\build\SpecFlow.Tools.MsBuild.Generation.targets')" />
  <Import Project="..\packages\SpecFlow.NUnit.3.0.225\build\SpecFlow.NUnit.targets" Condition="Exists('..\packages\SpecFlow.NUnit.3.0.225\build\SpecFlow.NUnit.targets')" />

在此处输入图像描述

标签: visual-studiospecflowtest-explorer

解决方案


正如您已经发现的,这是旧项目格式的一个已知问题。有两种可能的解决方法:

  1. 转换为 csproj 的新 sdk 格式
  2. 使用 SpecFlow+ Runner 作为单元测试运行器

推荐阅读