> 文章列表 > GoogleTest+VS code编译和编写简单测试用例

GoogleTest+VS code编译和编写简单测试用例

GoogleTest+VS code编译和编写简单测试用例

目录

  • 前言
  • 一、安装gtest
  • 二、 编译gtest与运行单元测试
    • 第一种编译方式
    • 第二种编译方式

前言

在B站看了非常多Gtest的教学视频,CSDN上gtest博客也特别多,但是都非常陈旧或者根本不是用vscode。本篇目的在于,说明如何在vscode上编写简单单元测试。
软件:vscode 2023

一、安装gtest

  1. 下载googletset源码:git clone https://gitcode.net/mirrors/google/googletest.git
    原repo:https://github.com/google/googletest下载特别慢,用上面镜像就好镜像
  2. cd googletest
  3. mkdir build && cd build
  4. cmake -DCMAKE_CXX_STANDARD=17 …
  5. make
  6. sudo make install

二、 编译gtest与运行单元测试

第一种编译方式

  1. 配置文件
    建立gtest_example工程文件夹,下面新建两个文件夹include、src。
    把第二步编译好的googletest中的googletest/include/gtest文件夹拷贝到gtest_example/includegoogletest/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)

GoogleTest+VS code编译和编写简单测试用例
2. 编译和运行
依次点击vscode下方工具条1(选择“debug模式”)和2,完成编译;点击3,运行。
GoogleTest+VS code编译和编写简单测试用例
运行结果:
GoogleTest+VS code编译和编写简单测试用例

第二种编译方式

在src上新建main.cpp,内容如上。cd srcg++ main.cpp -lgtest -pthread完成编译。在src文件夹生成了a.out文件,执行./a.out实现单元测试。