12

对于那些熟悉Gallio的人来说,使用这个工具,即所谓的测试自动化平台,您体验过哪些优点和缺点?

4

7 回答 7

10

我们使用 Gallio/MbUnit 已经一年了。我们对此非常满意,Gallio 开发人员不断推出很酷的新功能,并且开发很活跃。如果您决定使用它,这里有一些提示/注意事项:

  1. 为自己购买一个 TestDriven.NET 许可证 - 我认为这是 Gallio 单元测试的必要条件,因为 Resharper 测试运行程序不知道如何运行某些测试 + Gallio 有一个针对 TD.NET 的测试运行程序。
  2. 我们为 CI 脚本/构建使用 Gallio.Echo 命令行运行程序。Gallio Icarus - GUI 运行器(至少是当前版本)非常不稳定且对用户不太友好。
  3. 如果您想使用最新的 Gallio 功能(如并行测试等),请准备好使用最新的 Gallio 每日版本。如果这是一个问题,请继续使用“官方”构建,但我们在日常构建版本中没有遇到任何实际问题。
  4. 我建议将基本的 Gallio .DLL 和 .EXE 添加到您的源代码管理中。并且实际上在您的项目中引用这些,而不是来自 GAC 的。这样,如果您团队中的某个人在他/她的机器上安装了不同版本的 Gallio,您将避免任何“在我的机器上工作”问题。
于 2009-03-26T12:47:46.667 回答
5

我也尝试了 Gallio,它的运行速度比 TDD.Net 或本机 NUnit GUI 测试运行器慢得多。它甚至比 Resharper 跑步者还要慢!

我应该补充一点,我在这里谈论的是运行 NUnit 测试。

我不记得确切的数字,但相同的测试大约需要 3 分钟,NUnit 在 30 秒内完成(在一个线程、单个进程、多个域上运行)。

这本身就已经让它不行了。再加上笨重的 GUI,你就知道要远离它。


一些额外的信息:

  • 在我的解决方案中,我进行了 NUnit 测试,并且最近开始添加MSpec 规范。在我重新编译并且测试 dll 更改后,我打开了 NUnit Gui 以自动重新运行我的旧测试(所有新测试都编写为 MSpecs)。

  • 我使用 TDD.Net 来运行我的 Mspec 规范。

  • 这使我能够在我的 Specs 完成运行而 NUnit Gui 运行器仍在完成时继续工作。

于 2010-02-26T13:29:18.690 回答
3

当我们评估 Gallio 时,我们遇到了大型项目的稳定性问题。然而,我们较小的项目运行良好。伟大的概念......我认为一旦它更精致一点,它会引起轰动。

我可能想补充一点,Resharper 支持丢失(或损坏)了一段时间,但我听说它又回来了。

于 2008-09-11T20:23:47.483 回答
2

最新版本的 Gallio (3.0.6) 解决了这些帖子中提到的许多稳定性问题。特别是,Icarus 现在更加稳定,并且能够附加到内置的调试器,因此使用起来甚至比 Resharper 更快,Resharper 在每次测试运行之前重新编译代码。

于 2009-04-20T22:45:17.080 回答
2

它非常不稳定,我大约在 3-4 个月前使用它,它非常不稳定而且速度很慢。

现在我刚刚尝试过,当您单击“保存”时它会崩溃,然后它永远不会再次打开,除非您去清理“本地设置”,我认为它仍然非常不稳定。

我希望他们停止添加新功能,而是修复这些相当明显的错误。

PS Project 有 1000~ 个单元测试,它正在使用 nUnit(可能只是我的 nUnit 和 Gallio 不能很好地配合使用)

我真的很想使用它,而且我有 3.1 - 313,我什至无法保存项目而不会崩溃!

毕竟坏东西的优点在这里:

  • 对不同风格的强大支持,我已经将它用于 nUnit 和 mbUnit,它非常好。它甚至很好地支持 nUnit 中的 RowTest。

  • GUI非常酷,干净

  • 具有设置工作目录等强大功能
  • 报告与整合
于 2009-10-08T11:12:43.863 回答
1

在优势方面,与一切的集成非常好 :) 说真的,我非常喜欢与 Visual Studio Team System 的实验性集成(此处为屏幕截图)。我认为这确实降低了单元测试新手的门槛。

到目前为止,从我的角度来看,唯一的缺点是它尚未发布。

于 2008-09-11T20:22:11.577 回答
1

我一直在评估 Gallio,它确实是一个很棒的概念。现在我不必告诉我的开发人员他们必须使用什么单元测试框架,因为它与我所知道的所有主要框架都集成了。他们可以使用他们最熟悉的那个,我得到单元测试的代码。

Resharper集成也很好。我可以使用 Resharper 运行所有单元测试,而无需跳到命令行来运行它们。

在我看来,这肯定会使将单元测试引入商店变得容易得多。我同意@David,缺点是它还没有发布。

于 2008-09-11T20:31:36.357 回答