构建/运行 Google 测试
Posted
技术标签:
【中文标题】构建/运行 Google 测试【英文标题】:Building/Running Google Test 【发布时间】:2013-04-03 12:07:38 【问题描述】:我正在尝试构建和运行 Google 测试,但遇到了一些问题。 非常感谢任何帮助。 我使用 CMake 2.8(带 UI)在 D:/MyBuild 中创建 .sln 和 .vcproj 文件 目录(如 google test 的 README 文件中所述)。 但是,当我尝试运行 MyBuild 目录中的 .sln 文件时, 这是我得到的(图片):
另外,这是我以前使用的 CMake 的屏幕截图 在 D:/MyBuild 目录下创建 .sln 文件和 .vcproj 文件。
ps。我注意到的一件事是自述文件给出了如何 使用 CMake 的非图形版本(例如 2.6)来安装 谷歌测试,但是我使用了一个用户界面 - 也许 我在那里做错了什么?
【问题讨论】:
【参考方案1】:您似乎已经在调试模式下成功构建了 gtest 的库。但是,默认情况下 .sln 不包含任何可执行文件,因此您实际上无法运行任何东西。
如果您在 CMake GUI 中选中 gtest_build_samples
和/或 gtest_build_tests
的复选框并点击“生成”,那么 Visual Studio 解决方案应该包含一些可执行文件。
根据记忆,这些构建得并不干净,但我手头没有 MSVC 2010,所以我不能确定。
【讨论】:
嗨,谢谢,现在确实有一些效果了(在 D:/MyBuild 目录中创建了许多文件,我检查了 gtest_build_samples 和 gtest_build_tests)。但是现在,当我尝试编译它时,这是我得到的结果:“构建:54 成功,4 失败,0 最新,2 跳过” - 这很好,但我仍然有 4 失败(错误)。我该怎么做,你有什么提示吗?谢谢。 您需要显示失败输出,但这可能无关紧要。如果您正在构建 gtest 以在您自己的项目之一中使用它,那么当您仅构建库时您可能已经成功了。您只需从您的项目中链接到 gtest 库,您就可以开始运行了。 好的,现在我只选择了 gtest_build_samples 并生成了较少的文件,但编译也成功了 - 我希望我现在能够继续...... 嗨弗雷泽,谢谢 - 请参阅我的新评论(上图)。是的,我希望我现在可以继续前进 - 我以前从未做过这些链接等,但希望在谷歌测试网站上找到相关信息。如果我有一些问题,我会回到这里。谢谢!。 好的 - 祝你好运。需要注意的一件事(请参阅***.com/a/4222169/424459 - 第 5 项)是您选择要链接到的正确 C 运行时库。根据您的屏幕截图,您没有选择了gtest_force_shared_crt
复选框,这意味着您已经使用/MT
标志(在发布中)和/MTd
标志(在调试中)构建了gtest。我似乎记得新的 VS 项目默认这些为/MD
和MDd
。您应该在新项目中更改这些内容,或者在选中 gtest_force_shared_crt
复选框的情况下重建 gtest。以上是关于构建/运行 Google 测试的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 MinGW 和 MSYS 构建 Google 测试 - 找不到 crtdbg.h
[转] Google 开源 iOS 应用测试工具:EarlGrey
更正 CMakeList.txt 文件以进行 Google 测试?