ReSharper没有看到我的Machine.Specification测试
问题描述:
我有问题让ReSharper看到Machine.Specification“测试”我写了。ReSharper没有看到我的Machine.Specification测试
规格在mSpec的ConsoleRunner中运行。当我尝试在ReSharper中“运行单元测试”时,我收到一条消息:“文件中没有找到测试。”规格不显示测试标记。
我在ReSharper/bin /文件夹中创建了一个文件夹,并将正确的.dlls放在那里。 mSpec插件出现在ReSharper中。
我可能会丢失什么?
此外,我使用xUnit.NET,如果这有所作为。
答
ReSharper runner不考虑嵌套上下文类。未嵌套
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<>
)
答
为了具有良好的集成MSpec的Visual Studio和ReSharper的安装使用安装程序的MSpec可在此处获得:http://marcinobel.com/index.php/mspec-bdd-installer/
答
当试图将ReSharper和XUnit.net一起使用时,也遇到了“没有在文件中找到测试”的问题。但是我可以在Test Explorer窗口中看到我的测试,并能够从那里运行它们。
感谢您的回答;并通过Twitter的帮助。 – y0mbo 2009-10-12 13:00:21
+1 Yikes。有没有其他方法?!?!?!所以,我偶然发现了一个ReSharper单元测试报告的外观,给我留下了深刻的印象,而且我也遇到了与作者相同的问题。事情是,我有超过200个类(MSpec中超过2500个规格),他们继承了抽象的逻辑/助手等等。是的,它可以全部重构。但是我担心Contextes会被共享(更多重构!)以及MSpec报告将如何排序。 – eduncan911 2010-01-20 02:31:53
我编写了一个支持嵌套上下文的ReSharper runner版本 - 我们仍在考虑将这个版本放入官方版本。 http://github.com/agross/machine.specifications/tree/nestedtypes 尽管如此,恕我直呼命名空间是结构上下文的首选方法。 – 2010-01-20 13:04:12