gpt4 book ai didi

c++ - Visual Studio 2017 Google Test项目组织+测试发现失败

转载 作者:行者123 更新时间:2023-11-28 04:44:07 25 4
gpt4 key购买 nike

我在组织我的项目时遇到问题,它正在测试 Microsoft Visual Studio 2017 解决方案。我的项目目前以 .lib 文件的形式运行,并且正在运行并被我计算机上的另一个解决方案使用。

我将项目作为解决方案打开,然后使用“添加项目..”和 Google 测试项目提示将新项目添加到解决方案。我选择了要测试的项目,并说我将使用 google Test 作为 .lib 和 C++ 运行时库动态链接。

然后我编译并运行所有,发现发现了自动创建的默认启动测试。太好了。

然后,我#include "../managers/ConfigManager.h"并尝试再次运行所有程序,我得到了项目 .lib 中使用的各种头文件的“无法打开源文件”。好的,所以我将适当的包含目录添加到我的测试项目属性中。

“全部运行”现在缺少我的主项目的各个组件使用的库,因此我将所有库添加到附加依赖项,并将它们的目录添加到测试项目属性中的附加依赖目录。

再次尝试全部运行会导致发生几件事情。

  1. 我收到以下输出,表明我们找不到任何测试。

    [3/31/2018 12:17:59 PM Informational] ========== 发现测试完成:0 找到 (0:00:03.5029168) ==========

    [3/31/2018 12:18:03 PM Informational] ------ 运行测试开始 ------

    [3/31/2018 12:18:04 PM Informational] 适用于 Google 测试的测试适配器:测试执行开始...

    [3/31/2018 12:18:08 PM Informational] 在可执行文件 C:\Users\TwinHits\Source\Repos\project\x64\Debug\tests.exe 中找到 0 个测试

    [3/31/2018 12:18:08 PM Informational] 正在运行 0 个测试...

    [3/31/2018 12:18:08 PM Informational] Google 测试执行完成,总持续时间:00:00:03.7586898

    [3/31/2018 12:18:08 PM 警告] C:\Users\TwinHits\Source\Repos\TwinHits\x64\Debug\tests.exe C:\Users\TwinHits\Source 中没有可用的测试\Repos\project\x64\Debug\project.lib。确保测试发现者和执行者已注册并且平台和框架版本设置合适,然后重试。

  2. 我在“运行测试完成:0 次运行”后收到此错误。

    System.AggregateException:出现一个或多个错误。 --->System.InvalidOperationException:未找到以下 TestContainer 'C:\Users\John Goben\Source\Repos\TIEngine\x64\Debug\Sample-Test1.exe'在 Microsoft.VisualStudio.TestWindow.Controller.TestContainerProvider。d__62.MoveNext()--- 从抛出异常的先前位置开始的堆栈跟踪结束 ---在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务)在

    System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)在Microsoft.VisualStudio.TestWindow.Controller.TestContainerConfigurationQuery.d__15.MoveNext()

  3. 我的项目的 main.cpp 运行,这对我来说没有任何意义。

关于如何组织我的测试和使测试正确运行的项目,或者我走错了方向,您是否有任何指导?

最佳答案

我已经解决了这个问题。 Lib 项目不应该有 main() 的。如果有人能解释为什么这会扰乱谷歌测试的测试发现,我很想听听原因。

关于c++ - Visual Studio 2017 Google Test项目组织+测试发现失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49603891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com