【问题标题】:Gallio Icarus vs. Testdriven.net [closed]Gallio Icarus vs. Testdriven.net [关闭]
【发布时间】:2009-09-01 14:34:00
【问题描述】:

使用 VS 集成工具(如 Testdriven.net)与使用 GUI 测试运行器(如 Icarus 或 NUnit GUI)有什么区别?

你更喜欢什么,为什么?

到目前为止,我发现 Icarus 中的报告比 td.net 中的要好,td.net 仅具有命令行输出。 但是 td.net 使用起来更快,我可以更轻松地执行单个测试,而无需先取消选中其余部分。 NCover 集成也非常好。

【问题讨论】:

    标签: tdd gallio testdriven.net icarus


    【解决方案1】:

    Icarus 有一个很棒的功能让我一直使用它。它是测试的自动重新加载和重新运行。

    我让伊卡洛斯在左边的显示器上盘旋。每次我在 Visual Studio 中构建时,Icarus 都会重新加载程序集并运行所有测试。这有点像 Resharper 的解决方案分析的即时反馈,除了测试而不是语法。运行测试是自动的,似乎不会影响 Visual Studio 的性能(可能 b/c Icarus 是它自己的进程,而不是托管在 IDE 中)。

    要启用此配置,请转到 Icarus->Options->Test Explorer。选中“始终重新加载文件”和“重新加载后运行测试”。

    【讨论】:

    • 是的,我也这样做。唉,我的问题是 td.Net 是否提供任何好处。
    • 为了保护 TD.Net,构建运行作为运行单元测试的一部分,就地运行,并且不占用屏幕空间。
    • 真正酷的是在 Visual Studio 中编辑代码时重新运行相关单元测试的功能。但是你如何定义“相关”?
    • 这是一个老问题,但因为我发现它正在寻找与 Visual Studio 集成的优秀测试运行程序,所以值得一提的是 NCrunch 完全符合 GregC 所说的:“重新运行相关单元测试作为你在 VisualStudio 中编辑代码”
    【解决方案2】:

    您是否有持续集成服务器(如构建服务器,但运行单元测试)?

    如果是这样,您可以设置 Gallio 来运行您的单元测试并在其中保存所有报告信息,同时允许开发人员在工作时使用具有更快反馈的东西。

    如果没有选择,我更喜欢集成到 IDE 中的东西,例如 Testdrvien。在重构一段代码或在 TDD 下开发新东西时,即时反馈非常有用。此外,如果您没有在单点进行完整性检查(例如 CI 服务器),那么您将需要尽可能多的眼睛来查看这些单元测试。开发人员倾向于使用最简单的方法,通常,集成的测试套件比单独的组件更容易。

    【讨论】:

    • 我是个人开发者,所以我不需要使用 ci 服务器。实际上我确实有一个,但是我只是将它用于度量等(当然是为了好玩)
    • @Johannes Rudolph 如果 CI 服务器太过分了,您仍然可以使用构建脚本。每当您需要指标时,Rake 真的很容易从命令行设置和运行。这是我开始使用的 Rake 资源。 tobinharris.com/past/2008/11/4/getting-started-with-rake-on-net
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-24
    相关资源
    最近更新 更多