c++ - 无法使用 Google Test 在 C++ 中成功设置单元测试
问题描述
我正在尝试使用谷歌测试来验证 C++ 中红黑树实现的一些测试。我正在关注这篇文章中评分最高的答案。我确定要说明 Google Test 的最新发行版是 1.10.0 版,而不是 1.8.0 版。我尝试安装和链接库的步骤如下:
首先,我得到了最新的谷歌测试框架,如下所示:
wget https://github.com/google/googletest/archive/release-1.10.0.tar.gz
这成功安装。接下来,我可以在新的 googletest-release-1.10.0 文件夹中解压缩并构建 google test 的共享库。调用后调用make:
cmake -DBUILD_SHARED_LIBS=ON .
导致此消息:
[ 25%] Built target gtest
[ 50%] Built target gmock
[ 75%] Built target gmock_main
[100%] Built target gtest_main
该问题似乎发生在我将库中的标头复制到正确目录的步骤中。我可以做这个
sudo cp -a googletest/include/gtest /usr/include
但我的系统无法在 googlemock/gtest 中找到文件:尝试复制这些文件:
sudo cp -a googlemock/gtest/libgtest_main.so googlemock/gtest/libgtest.so /usr/lib/
给我错误没有这样的文件存在:
cp: cannot stat 'googlemock/gtest/libgtest_main.so': No such file or directory
cp: cannot stat 'googlemock/gtest/libgtest.so': No such file or directory
解决方案
当你构建包时,你会得到一个这样的目录:
├── appveyor.yml
├── bin
├── BUILD.bazel
├── ci
├── CMakeCache.txt
├── CMakeFiles
├── cmake_install.cmake
├── CMakeLists.txt
├── CONTRIBUTING.md
├── CTestTestfile.cmake
├── googlemock
├── googletest
├── lib
├── library.json
├── LICENSE
├── Makefile
├── platformio.ini
├── README.md
└── WORKSPACE
您找不到的文件在lib
文件夹中。
lib
├── libgmock_main.so
├── libgmock.so
├── libgtest_main.so
└── libgtest.so
推荐阅读
- julia - Python函数调用的参数是Julia中的保留字
- amazon-web-services - AWS ElastiCache (Redis) 的 Spring Data 原子增量
- dc.js - DC 热图如何为正值和负值指定 2 色图
- reactjs - Webpack:错误:无法解析“MyCustomPath/”
- python - 以更好的模式重写我的简单 Python 代码
- sql - 通过多个表循环查询
- reactjs - 如果使用 scaleLinear,如何将位置设置为刻度线
- wordpress - 酸奶。按类别显示元数据
- cmake - CMake:为什么 FIND_PACKAGE 找不到我的 Config.cmake 文件?
- java - 为什么语句没有返回 MS SQL jdbc 6.1.0 的结果集