可能得前置步骤
VScode安装cpp:
安装 C/C++ 扩展:打开 VSCode 扩展市场,搜索「C/C++」并安装扩展。
安装编译gtest
安装 Google Test:
- 如果你使用的是 Windows,可以下载并安装 pre-built 版本;
- 如果你使用的是 Linux 或 macOS,可以使用命令行安装:
# ubuntu/Debian安装源码
sudo apt-get install libgtest-dev
# 编译安装
# 学习brpc过程中发现有一条命令的版本
sudo apt-get install -y cmake libgtest-dev && cd /usr/src/gtest && sudo cmake . && sudo make && sudo mv lib/libgtest* /usr/lib/ && cd -
# cd /usr/src/gtest
# sudo mkdir build
# cd build
# sudo cmake ..
# sudo make
# # 复制库目录
# sudo cp libgtest*.a /usr/local/lib# mac
# brew install gtest
测试使用
创建测试代码:新建一个 C++ 文件,并写入测试代码,例如:
#include <gtest/gtest.h>TEST(TestCaseName, TestName) {EXPECT_EQ(1, 1);
}int main(int argc, char** argv) {::testing::InitGoogleTest(&argc, argv);return RUN_ALL_TESTS();
}
直接命令使用
⚡ 07/12|11:30:32 test /usr/bin/g++ -fdiagnostics-color=always -g /root/code/test/tmp.cpp -o /root/code/test/tmp -lgtest -lpthread⚡ 07/12|11:34:42 test ./tmp
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from TestCaseName
[ RUN ] TestCaseName.TestName
[ OK ] TestCaseName.TestName (0 ms)
[----------] 1 test from TestCaseName (0 ms total)[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (0 ms total)
[ PASSED ] 1 test.
通过VScode使用
在 VSCode 中运行单元测试:打开命令面板(Ctrl+Shift+P),输入Debug: Start Without Debugging
:
- 然后生成一个 task.json
- 需要修改添加args
-lgtest
,以及gtest的依赖库-lpthread
- 然后再次
Debug: Start Without Debugging
才能运行成功
json最终形态
{"tasks": [{"type": "cppbuild","label": "C/C++: g++ 生成活动文件","command": "/usr/bin/g++","args": ["-fdiagnostics-color=always","-g","${file}","-o","${fileDirname}/${fileBasenameNoExtension}","-lgtest","-lpthread"],"options": {"cwd": "${fileDirname}"},"problemMatcher": ["$gcc"],"group": {"kind": "build","isDefault": true},"detail": "调试器生成的任务。"}],"version": "2.0.0"
}
更多
ARST打卡第219周[219/521]
gtest 官方文档