【问题标题】:Visual Studio 2010: Building and development cycle with Google Test?Visual Studio 2010:使用 Google Test 构建和开发周期?
【发布时间】:2011-06-28 20:29:30
【问题描述】:

将 Visual Studio 2010 C++ 与 googletest 结合使用。我是单元测试的新手,我已经创建了一个测试解决方案来试验它。我在解决方案中有三个项目:

HelloService (static lib)
HelloService.Tests (exe, a console app I think, linked with gmock_main.lib)
HelloApp (MFC exe, my main app)

我已将 googletest(和 googlemock)编译链接并成功运行。我的问题是代码测试开发周期。我试图通过测试了解正确的工作流程。目前,如果我将 HelloService.Tests 设置为“启动项目”,那么当我按 F5 时测试运行,但我的 HelloApp 没有。如果我将 HelloApp 设置为启动项目,那么当我按下 F5 时,我的应用程序会运行,但我的测试不会。

我认为我希望我的“HelloApp”作为启动项目,但我的测试在我构建它时和运行它之前运行。那正确吗?我该如何设置才能做到这一点?

【问题讨论】:

标签: c++ visual-studio unit-testing projects-and-solutions googletest


【解决方案1】:

我的解决方案是将 HelloApp 设置为 StartUp 项目,然后右键单击 HelloApp 项目并选择“Project Dependencies...”,然后检查 HelloService.Tests 项目(已检查 HelloService 项目)。现在,当我按 F5 时,测试项目开始运行(因为 HelloService.Tests 已经有一个构建后事件可以自行运行)

我唯一担心的是,如果创建项目依赖项会创建某种代码依赖项。我的猜测是它没有,但我想确定。

【讨论】:

    【解决方案2】:

    您可以在测试项目上设置构建后事件来运行测试可执行文件。然后,将测试项目添加为主应用程序的依赖项将在每次构建时自动运行测试。这确实意味着如果任何测试失败,构建将失败。由您决定是继续运行应用程序还是先修复失败的测试。

    【讨论】:

      猜你喜欢
      • 2012-12-25
      • 2011-02-22
      • 2011-05-12
      • 2011-04-08
      • 2012-07-08
      • 2013-02-21
      • 1970-01-01
      • 1970-01-01
      • 2011-08-11
      相关资源
      最近更新 更多