【问题标题】:Why are my MSpec specifications not recognized by ReSharper?为什么 ReSharper 无法识别我的 MSpec 规范?
【发布时间】:2013-09-04 05:30:00
【问题描述】:

我知道如何将 MSpec 与 R# 集成,我知道“阻塞的 DLL”问题。但我仍然无法弄清楚为什么我的测试不被识别。不过,我正在以一种不寻常的方式集成 MSpec。我不使用 NuGet。我有旧的 MSpec 版本 - 0.4.9 - 我的测试是为此而构建的。我为 R# 手动创建 Plugins 文件夹并将以下 DLL 放在那里:

  • Machine.Specifications.dll 0.4.9
  • Machine.Specifications.ReSharperRunner.6.1.dll 0.5.0(从 GitHub 源代码构建)

在我启动 VS 并打开 R# 的选项对话框后,运行器会显示在插件部分。但是我的测试不被认可。版本不匹配会是一个问题吗? R# 是否有任何日志记录,我可以在其中看到它与插件的通信?

【问题讨论】:

    标签: unit-testing resharper mspec


    【解决方案1】:

    您是否尝试从 NuGet 下载 0.4.9 二进制文件并使用此版本的 ReSharper 运行程序?当前源不再支持这些旧版本。

    【讨论】:

    • 不,我没有,我会试一试。
    • 我试了一下 - 该版本不包含 R# runner。你知道 mspec/runner 版本是否应该匹配吗?如果我将 mspec 0.4.9 和 runner 0.5.8 放在一起(在 Plugins 文件夹中)(这是我在互联网上能找到的最早的)怎么办?它会起作用吗?根据我的经验,它不起作用。但我可能会遗漏其他东西......
    • 似乎 0.5.0 是第一个支持 ReSharper 6.1 的版本。你能把你的项目更新到那个版本吗?
    【解决方案2】:

    我终于解决了这个问题。我必须按照此处所述调试运行器 - https://github.com/machine/machine.specifications/blob/master/debugging-resharper.txt。我发现跑步者是为 ReSharper 6.1.37.86 构建的,这不是最新的 6.1 版本,列表在这里 - http://resharper-support.jetbrains.com/entries/21206508-Where-can-I-download-an-old-previous-ReSharper-version-。最新的 6.1 版本是 6.1.1000.82,它安装在我的机器上。因此,跑步者在启动期间无法找到所需的 ReSharper 程序集。我通过将程序集重定向添加到 devenv 的配置文件中解决了这个问题。运行程序所依赖的所有 ReSharper 文件都需要重定向,总共有 16 个。重定向示例是:

    <dependentAssembly>
      <assemblyIdentity name="JetBrains.Platform.ReSharper.ComponentModel" publicKeyToken="1010a0d8d6380325" culture="neutral"/>
      <bindingRedirect oldVersion="6.1.37.86" newVersion="6.1.1000.82"/>
    </dependentAssembly>
    

    【讨论】:

      【解决方案3】:

      对于使用 Visual Studio 2019 / Resharper 2019.3.4+ 设置遇到此问题的任何人,使用 Resharper 的内置扩展管理器是有效的。

      在 VS 中,转到:

      扩展 -> ReSharper -> 扩展管理器

      并搜索/安装“Machine.Specifications for ReSharper”

      【讨论】:

        猜你喜欢
        • 2011-01-25
        • 2015-11-20
        • 1970-01-01
        • 2017-02-12
        • 1970-01-01
        • 2012-08-11
        • 1970-01-01
        • 1970-01-01
        • 2019-09-02
        相关资源
        最近更新 更多