【发布时间】:2010-04-14 03:20:11
【问题描述】:
如果我安装 Gallio 3.x,它还会安装 Visual Studio 的测试运行插件吗?
或者我必须使用像 TestDriven.NET 或 Visual Nunit 这样的附加插件在 VS 中运行 MbUnit 测试类吗?
【问题讨论】:
标签: visual-studio plugins mbunit gallio
如果我安装 Gallio 3.x,它还会安装 Visual Studio 的测试运行插件吗?
或者我必须使用像 TestDriven.NET 或 Visual Nunit 这样的附加插件在 VS 中运行 MbUnit 测试类吗?
【问题讨论】:
标签: visual-studio plugins mbunit gallio
在开发机器上安装 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 相比,我发现的一个明显优势是调试现在更加直接,可以按预期命中断点。
祝你好运,李
【讨论】:
TestDriven.Net 运行良好。 Gallio 还支持 ReSharper 单元测试运行程序和 Visual Studio 测试工具。我们将在本周发布新版本的 Gallio,支持 R# 5.0 和 VS 2010。
【讨论】:
这些是在 Visual Studio 2012 及更高版本中使用简洁的 NUnit 技巧运行 MBUnit 测试的说明。
首先,安装 NUnit 测试适配器扩展(是的,NUnit)
然后,您只需向您的测试方法中添加一个新的 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 测试
希望这有帮助,这是一个简单的工作方法,所以请投票,非常感谢。
【讨论】: