转到测试 (F12) 在 Visual Studio 的测试资源管理器中不起作用

问题描述

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

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

附言我发现了 https://github.com/SpecFlowOSS/SpecFlow/issues/1457

中描述的类似问题

编辑:我使用的是 VS2019 16.8.5、.NET Framework 4.8,我的 csproj 使用旧的 XML 格式,我使用的是 SpecFlow 功能,其中 *.feature.cs are not under source control

  <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')" />

enter image description here

解决方法

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

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...