【问题标题】:VS 2010 and MBUnit how to run just one testVS 2010 和 MBUnit 如何只运行一项测试
【发布时间】:2010-02-12 18:27:22
【问题描述】:

我安装了 Gallio/MbUnit 并且正在使用 VS 2010 RC,我希望能够在每次调试时运行单个单元测试或仅在 TestFixture 内运行所有单元测试,而不是整个项目中的所有测试。你如何在 VS 2010 中做到这一点?

【问题讨论】:

    标签: c# unit-testing visual-studio-2010 mbunit


    【解决方案1】:

    安装testdriven.net,有免费的个人版

    http://www.testdriven.net/

    【讨论】:

      【解决方案2】:
      • 正如西蒙所说,TD.Net 运行良好。
      • 如果您使用 VS2010 Premium 或 Ultimate,您还可以使用 VS2010 的内置测试运行功能。它也应该找到并运行您的 MbUnit 测试(如果安装了 Gallio 插件)
      • 您也可以使用Resharper 5 运行测试,但Resharper 5 的最新测试版似乎破坏了Gallio 测试驱动程序。不过应该很快就会修复。

      除了 VS2010 IDE,您还可以使用 Echo(位于 Gallio 安装目录的 bin 文件夹中的强大控制台应用程序)、Icarus(具有漂亮 UI 的 Winform 应用程序;相同的位置),或来自 PowerShell(通过使用 Run-Gallio snap-in)。您还可以从用于 MSBuild、NAnt、TeamCity 等的 Gallio 的众多扩展之一调用测试运行程序。

      【讨论】:

        【解决方案3】:

        我之前没有看到它,但是 VS 2010 有一个测试列表编辑器,它允许我将特定测试添加到一个列表并从那里运行它,以便只运行一个测试。我知道 TD.Net 可能有一个测试方法的右键单击/运行测试选项,但我不想购买它并安装另一个工具。

        【讨论】:

        • 测试列表编辑器是唯一无需安装另一个开发工具的方法。但是我现在认为,当您“在当前上下文中运行测试”时,所有测试都在 VS 2010 中运行是一个错误
        【解决方案4】:

        另一种选择,我们如何做到这一点是在 Visual Studio 中选择规范,按 F5,它会通过 Rake 任务运行规范。

        例子:

        class DiffuserObserverSpecification 
              : AutoMockSpecification<DiffuserObserver, IDiffuserObserver>
        
        class When_diffuser_observer_is_created : DiffuserObserverSpecification
        
        class When_diffuser_observer_has_injected_diffuser_change 
              : DiffuserObserverSpecification
        

        所以要执行所有 DiffuserObserverSpecification 的行为预期,我们选择 DiffuserObserverSpecification 并按 F5。

        要仅执行 When_diffuser_observer_is_created 的行为,选择该行为并按 F5。

        一个月后你会忘记我的调试器是什么样子的。

        【讨论】:

          猜你喜欢
          • 2011-01-14
          • 2023-03-24
          • 1970-01-01
          • 2010-09-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多