为MBUnit测试提供Gallio测试运行器插件,适用于Visual Studio 2008和2010。

8
如果我安装Gallio 3.x,它会同时安装一个Visual Studio的测试运行插件吗?
还是必须使用额外的插件,如TestDriven.NET或Visual Nunit,在VS中运行MbUnit测试类?
3个回答

19

在开发机器上安装Gallio 3.1。然后在VS2008中,您将有创建“MbUnit v3测试项目”的选项。这不仅为您包含了所有的Gallio dll文件,还在项目中加入了一个魔术行,使其被识别为VS中的测试项目。

现在您可以直接使用内置的VS2008测试运行程序。

如果您已经有任何带有单元测试的现有项目,而不是创建新项目,请编辑您现有的项目文件并在第9行上添加以下行(在第8行下面的 <ProjectGuid> 下面):

 <ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>

(如果你有VB项目,它有一个不同的第二个GUID:<ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids> 你可以通过从Gallio安装的模板创建一个新的MbUnit测试项目,然后在文本编辑器中查看项目文件(.csproj或.vbproj)来找到正确的值。)

现在当你重新加载项目时,VS2008将把它识别为测试项目。

我发现与使用Icarus相比,一个独特的优势是调试现在更加直观,断点会按预期被触发。

祝你好运,Lee


3
我在一年后发现了这个StackOverflow问题的答案,而且仍然有效。它也适用于VS2010。谢谢。 - Nordin

2

TestDriven.Net的表现非常出色。Gallio还支持ReSharper单元测试运行器和Visual Studio测试工具。本周我们将发布新版本的Gallio,支持R#5.0和VS2010。


Gallio v3.1 Update 2 build 397 - x86是否支持Visual Studio 2010 Beta 2?这是为什么Gallio测试在VS 2010RC的输出窗口中无法工作的原因吗?您提到的新版本会改变这种情况吗? - netmajor
在3.2 RC(build 577)中,使用Icarus并不顺利。它在UI中抛出各种异常。(Win7 32位)是否有关于如何与VS2010集成的文档?我正在使用NUnit 2.5.3,但没有上下文菜单来运行测试等。 - Santosh Benjamin

0

这是在Visual Studio 2012及以上版本中使用巧妙的NUnit技巧运行MBUnit测试的指南。

首先,安装NUnit Test Adapter扩展(是的,NUnit)

  • 工具 > 扩展和更新 > 在线 > 搜索NUnit > 安装 NUnit Test Adapter。
  • 您可能需要重新启动Visual Studio IDE。

然后,您只需要将一个新的NUnit测试属性添加到您的测试方法中。请参见此处的示例代码(注意顶部的using语句)...

//C# example
using MbUnit.Framework;
using NuTest = NUnit.Framework.TestAttribute;

namespace MyTests
{
    [TestFixture]
    public class UnitTest1
    {
        [Test, NuTest]
        public void myTest()
        {
            //this will pass
        }
    }
}

您可以在Visual Studio中运行和调试测试,NUnit和Gallio Icarus GUI Test Runner将以MBUnit的形式运行它们(例如启用并行运行)。您需要通过删除gallio安装位置(即C:\ Program Files \ Gallio \ bin \ NUnit)中的NUnit文件夹来停止Gallio运行NUnit测试。

希望这可以帮到您,这是一种简单有效的方法,请投票支持,非常感谢。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接