【问题标题】:Why does renaming this MSpec class through ReSharper break the test runner?为什么通过 ReSharper 重命名这个 MSpec 类会破坏测试运行器?
【发布时间】:2013-07-24 16:12:16
【问题描述】:

我在使用 ReSharper 的“重命名”重构重命名 MSpec 测试类时遇到问题。例如:

[Subject("Move to first page")]
public class When_possible { } 

当我将其重命名为 When_in_second_page 并单击左侧的运行测试图标时,我看到一个不正确的重命名“When in second”并且测试没有运行!

有时左侧图标会一起消失。 Build 或 Rebuild 不能修复它,但重新启动可以。我还有其他MSpec problems,你认为他们有关系吗?还是安装相关的问题?

【问题讨论】:

  • 你清理了你的代码,然后重建了吗?
  • 是的,不仅是项目,还有解决方案
  • 我将 mspec 更新为 0.5.14(原为 0.5.12),但问题依然存在。
  • 这绝对是跑步者的问题。这件事一直困扰着我。请在 GitHub 上提交错误报告,链接到此问题。

标签: c# resharper mspec


【解决方案1】:

我曾多次遇到类似问题,其中 R# 测试运行程序似乎与代码不同步。以下是我在不同时间尝试过的一些有用的方法。公平地说,这可能不是 MSpec 问题,它似乎更可能与 R# 测试运行器有关(我不知道是 R# 部分还是 MSpec 部分)。

无论如何,请尝试以下方法:

  • 您是否尝试将构建设置(在 R# 测试运行程序窗口中)设置为“自动”?
  • 在 R# 单元测试选项中禁用程序集的卷影复制会怎样?
  • 检查所有程序集(和依赖项)是否针对相同版本的 .NET。我针对 .NET 3.5 做了很多工作,而且我总是得到默认设置为 4.5 的新项目。我发现这确实会混淆 R# 和/或 MSpec。
  • 关闭所有 R# 测试会话,让它从一个新的、干净的会话开始。

【讨论】:

  • 我所有的设置都按照你的建议,除了卷影复制。我将禁用它并进行测试。问题出现后,关闭并启动新会话并不能解决问题。
  • 禁用卷影复制后问题继续出现
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-15
  • 1970-01-01
  • 2018-01-22
  • 1970-01-01
  • 2016-08-16
相关资源
最近更新 更多