3

我无法让 ReSharper 查看我编写的 Machine.Specification “测试”。

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

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

我可能会错过什么?

此外,如果这有所作为,我正在使用 xUnit.NET。

4

3 回答 3

7

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

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

未嵌套的创作上下文,即命名空间内的根类:

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

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

  • 班级是公开的
  • 类不是抽象的
  • 类没有嵌套
  • 具有 >= 1 个规范字段 ( It),或具有 >= 1 个行为字段 ( Behaves_like<>)
于 2009-10-11T23:48:31.570 回答
0

为了将 MSpec 与 Visual Studio 和 ReSharper 良好集成,请使用安装程序安装 MSpec,此处提供:http: //marcinobel.com/index.php/mspec-bdd-installer/

于 2009-11-23T12:53:41.427 回答
0

当尝试一起使用 ReSharper 和 XUnit.net 时,“在文件中找不到测试”也有同样的问题。但是,我可以在测试资源管理器窗口中看到我的测试,并且能够从那里运行它们。

于 2015-08-17T09:33:46.777 回答