我有一个使用NUnit的单元测试项目。当我将mspec(machine.specifications)程序集添加到引用时,ReSharper和TestDriven.Net都停止运行NUnit测试并仅运行mspec测试。
有没有一种方法或设置允许NUnit和& mspec测试共存并使用R#& amp; TD.Net测试跑步者?
答案 0 :(得分:1)
我刚刚在VS 2008上使用ReSharper 5.0和TestDriven.Net 3.0 RC2以及以下代码进行了测试。
using Machine.Specifications;
using NUnit.Framework;
namespace ClassLibrary1
{
[TestFixture]
public class FooTests
{
[Test]
public void Bar()
{
Assert.IsTrue(true);
}
}
public class When_tests_are_run
{
It should_succeed = () => true.ShouldBeTrue();
}
}
我无法重现您使用ReSharper描述的行为。首先,ReSharper检测两个测试类,如绿色和黄色的沟槽标记所示。右键单击项目并选择“运行单元测试”将成功运行两个测试。通过装订线图标单独运行它们也可以按预期工作。
至于TestDriven.Net,我不确定它是否支持在一个项目中使用多个测试框架的场景。当我在项目上“运行测试”时,只执行MSpec上下文。但是,单击NUnit TestFixture内部的“Run Test(s)”会执行NUnit测试。
答案 1 :(得分:0)
确保在ReSharper中打开MSpec。即使你“安装”了跑步者(手动或蝙蝠文件),它也没有默认打开。
打开它ReSharper菜单|选项...... |工具|单元测试