目录
前言
在B站看了非常多Gtest的教学视频,CSDN上gtest博客也特别多,但是都非常陈旧或者根本不是用vscode。本篇目的在于,说明如何在vscode上编写简单单元测试。
软件:vscode 2023
一、安装gtest
- 下载googletset源码:
git clone https://gitcode.net/mirrors/google/googletest.git
原repo:https://github.com/google/googletest下载特别慢,用上面镜像就好镜像 - cd googletest
- mkdir build && cd build
- cmake -DCMAKE_CXX_STANDARD=17 …
- make
- sudo make install
二、 编译gtest与运行单元测试
第一种编译方式
- 配置文件 建立gtest_example工程文件夹,下面新建两个文件夹include、src。 把第二步编译好的googletest中的
googletest/include/gtest
文件夹拷贝到gtest_example/include
;googletest/include/gmock
文件夹拷贝到gtest_example/include
;/googletest/build/lib
文件夹拷贝到gtest_example/
。 在gtest_example/src
文件夹下新建main.cpp
,main.cpp内容如下:(单元测试如何写,自行百度,内容太复杂。)
#include <gtest/gtest.h>#include <iostream>
using namespace std;
int add(int a,int b){return a+b;}
TEST(testCase1,test_add_method){
EXPECT_EQ(add(1,2),3);}
int main(int argc, char **argv){
testing::InitGoogleTest(&argc, argv);return RUN_ALL_TESTS();}
在
gtest_example/
文件夹下新建
CMakeLists.txt
,CMakeLists.txt内容如下:
cmake_minimum_required(VERSION 3.21)
project(gtest_gmock)
include_directories(./include DIR_INC)
set(CMAKE_CXX_STANDARD 17)
link_directories(./lib)
add_executable(gtest_gmock src/main.cpp)
target_link_libraries(gtest_gmock libgtest.a libgtest_main.a pthread)
2. 编译和运行
依次点击vscode下方工具条1(选择“debug模式”)和2,完成编译;点击3,运行。
运行结果:
第二种编译方式
在src上新建main.cpp,内容如上。
cd src
,
g++ main.cpp -lgtest -pthread
完成编译。在src文件夹生成了a.out文件,执行
./a.out
实现单元测试。
版权归原作者 是江姑娘呀 所有, 如有侵权,请联系我们删除。