可能有MSpec& NUnit在单个项目中测试?

时间:2010-04-30 13:58:43

标签: nunit mspec

我有一个使用NUnit的单元测试项目。当我将mspec(machine.specifications)程序集添加到引用时,ReSharper和TestDriven.Net都停止运行NUnit测试并仅运行mspec测试。

有没有一种方法或设置允许NUnit和& mspec测试共存并使用R#& amp; TD.Net测试跑步者?

2 个答案:

答案 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菜单|选项...... |工具|单元测试