您现在的位置是:首页 >学无止境 >GoogleTest+VS code编译和编写简单测试用例网站首页学无止境

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

是江姑娘呀 2023-05-20 04:00:02
简介GoogleTest+VS code编译和编写简单测试用例

前言

在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)

在这里插入图片描述
2. 编译和运行
依次点击vscode下方工具条1(选择“debug模式”)和2,完成编译;点击3,运行。
在这里插入图片描述
运行结果:
在这里插入图片描述

第二种编译方式

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

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。