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 
#include 
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编译和编写简单测试用例_第1张图片
2. 编译和运行
依次点击vscode下方工具条1(选择“debug模式”)和2,完成编译;点击3,运行。
在这里插入图片描述
运行结果:
GoogleTest+VS code编译和编写简单测试用例_第2张图片

第二种编译方式

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

你可能感兴趣的:(模型量化,单元测试,gtest,c++)