ReSharper 看不到我的 Machine.Specification 测试

标签 resharper xunit.net mspec

我在让 ReSharper 查看我编写的 Machine.Specification“测试”时遇到问题。

规范在 mSpec 的 ConsoleRunner 中运行。当我尝试在 ReSharper 中“运行单元测试”时,我收到一条消息:“在文件中找不到测试。”规范不显示测试标记。

我在 ReSharper/bin/文件夹中创建了一个文件夹,并将适当的 .dll 放在那里。 mSpec 插件出现在 ReSharper 中。

我可能遗漏了什么?

此外,如果有影响的话,我正在使用 xUnit.NET。

最佳答案

ReSharper 运行器不考虑嵌套的上下文类。而不是嵌套上下文类:

namespace SomeNamespace
{
    public class Specs
    {
        public class when_something_happens
        {
            Because of = () => {};
            It should_do_something = () => {};
        }
    }
}

未嵌套的作者上下文,即 namespace 内的根类:

namespace SomeNamespace
{
    public class when_something_happens
    {
        Because of = () => {};
        It should_do_something = () => {};
    }
}

如果满足所有条件,ReSharper 的绿色和黄色测试图标会出现:

  • 公开课
  • 类不是抽象的
  • 类没有嵌套
  • 有 >= 1 个规范字段 ( It ), 或者有 >= 1 个行为字段 ( Behaves_like<> )

关于ReSharper 看不到我的 Machine.Specification 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1546618/

相关文章:

c# - 将 VS 代码片段与 Resharper 结合使用

visual-studio-2013 - 我的文件夹中没有出现 Resharper "Namespace Provider"选项

c# - 使用服务进行验证时如何对 IValidatableObject Validate 进行单元测试?

c# - 使用 IClassFixture 时输出测试结果 XUnit .net core

c# - 为什么这个继承的 Establish 会被执行多次?

visual-studio-2010 - 在Visual Studio 2010和.NET 4中使用MSpec运行程序

c# - 使用 ReSharper 在 Visual Studio 的自动格式化中换行和换行

c# - Resharper 提议从 WPF 中的 Window 类中删除冗余继承

.net - Xunit : Perform all 'Assert' ions in one test method?

mocking - BDD 和模拟框架的哪种组合可以与 Team Build 门控 checkin 一起使用?