我遇到了一个问题,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 SomeNamespace
{
public class when_something_happens
{
Because of = () => {};
It should_do_something = () => {};
}
}
如果满足以下所有条件,ReSharper的绿色和黄色测试图标将会出现:
It
) 或者具有 >= 1 个行为字段 (Behaves_like<>
)在使用ReSharper和XUnit.net时,我也遇到了“文件中未找到测试”的问题。但是,我可以在测试资源管理器窗口中看到我的测试,并能够从那里运行它们。