Resharper - 结论不确定:在调试时未运行测试

23

我遇到了一个非常类似于这个的问题。

在Resharper中调试任何测试都会返回"Inconclusive: test not run"。这对于我的每个测试、每个解决方案和每个项目都是如此。重新安装VS2019和Resharper也没有帮助。运行测试工作正常。

enter image description here 我使用devenv.exe /ReSharper.LogFile C:\temp\resharper.log /ReSharper.LogLevel Verbose命令调试测试,结果是这个(一个约6900行文件的片段)。

第一个错误说:"Method 'StartSessionAsync' in type 'ReSharperAwareWrapper' from assembly 'JetBrains.ReSharper.UnitTesting.MSTest.Provider, Version=777.0.0.0, Culture=neutral, PublicKeyToken=1010a0d8d6380325' does not have an implementation."

我尝试了链接中的所有流行答案,但似乎没有什么帮助。

代码基于.NET Core 3.1的C#解决方案。

Resharper: 2020.1.4 | Visual Studio: 16.7.0

7个回答

17

我通过安装ReSharper 2020 EAP版本(2020.2 EAP)解决了一个问题。看起来在2020.1.4版本中存在一个错误。


1
我从Resharper 2020.1.4更新到2020.2.4,这样问题就解决了。 - Matt Newbill
不错,暂停Resharper解决了问题!谢谢。 - CharithJ
1
我从 ReSharper 2020.1.4 升级到 2021.1.2,问题得到了解决。更新后必须重新启动 Visual Studio 才能使修复生效。 - Eternal21
ReSharper 2021 1.1也遇到了同样的问题,但更新到1.2版本后问题得以解决。 - MakePeaceGreatAgain

2

对我来说,这是因为测试在构建时未被选中。因此,我必须在“生成” -> “配置管理器”中选中单元测试项目。勾选列中的构建。


1
我更新了VS到16.7之后开始遇到完全相同的问题。有趣的是,它也破坏了Rider中的单元测试调试。
微软推出了新的Microsoft.NET.Test.Sdk包,但看起来它并没有起到帮助作用。作为一种解决方法,你可以从VS Unit Test窗口启动测试,而不是从Resharper启动。

0

正如@Peace所说,您可以更新ReSharper,但如果这并没有帮助您,您可以:

  1. 重新启动
  2. 更新Visual Studio:帮助 > 检查更新

0
除了 @Mihails Popovs 给出的答案之外,可能的原因是您没有引用 Microsoft.NET.Test.Sdk。

0
这只是ReSharper的“默认错误消息”,如果它在某种情况下无法运行测试,就会出现这个消息。正如你在这个旧问题中所看到的(这个问题基本上是一个重复),可能有数百种可能的原因,如果你在StackOverflow之外搜索,你会找到更多。
在“测试会话”窗口的右上角,有一个“错误”按钮,你可以点击它查看详细的错误日志,这可能会给你一些提示。大多数人忽视了这个按钮,因为它的大小和位置(而且,为什么不直接在右侧显示日志,就像通常显示测试输出一样呢?)
你总是可以尝试一些常见的方法:
  • 清除ReSharper设置中的缓存,并重新启动Visual Studio
  • 直接从Visual Studio运行单元测试项目。这样可以吗?如果不能,那显然你的单元测试也无法运行(但如果ReSharper以更清晰的方式报告这个问题就好了...)
总的来说,ReSharper测试运行器中测试会话界面的错误报告不够完善,这就是人们对这类问题感到沮丧和困惑的原因,而且这种情况已经持续了十多年。

0
我在一些项目的测试中突然遇到了这个问题。在VS中进行了Build->Clean和重新构建。然后测试又正常工作了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接