如何在 VS Code 中运行测试和调试 Google Test 项目? [英] How to run tests and debug Google Test project in VS Code?
本文介绍了如何在 VS Code 中运行测试和调试 Google Test 项目?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想运行示例测试并调试
自行构建 Google 测试
使用终端:
- 进入目录
/home/user/Desktop/projects/cpp/googletest
- 在其中创建
build/
使其看起来如下所示:
└─cpp/googletest/├─ 建造/├─ ...其他googletest文件
cd build
- 运行:
cmake -Dgtest_build_samples=ON -DCMAKE_BUILD_TYPE=Debug ..
make -j4
./googletest/sample1_unittest
使用 VS 代码
- 在 VS Code 中打开
googletest
文件夹 - CMake 扩展会提示配置,允许它
- 您将看到一个
.vscode
目录.里面是settings.json
文件,打开它,并添加以下内容:
"cmake.configureSettings": { "gtest_build_samples": "ON";}
- 从底部栏中的按钮构建和运行
I want to run the sample tests and debug the Google Test project. I am using VS Code on Ubuntu 16.04 LTS.
- I cloned the project locally at
/home/user/Desktop/projects/cpp/googletest
, - created a new directory called
mybuild
at/home/user/Desktop/projects/cpp/mybuild
. - According to the README instructions here: https://github.com/google/googletest/tree/master/googletest I used the command,
cmake -Dgtest_build_samples=ON /home/user/Desktop/projects/cpp/googletest
to build the project and this generated a bunch of files and apparently the build succeeded.
Now, I have 2 problems:
How do I run the sample tests for the project?
How do I debug these test and the source code for the project?
解决方案
- Start with a clean directory:
/home/user/Desktop/projects/cpp/ # your project lives here
- Add your cmake file(CMakeLists.txt), your source files, and test file. The directory now looks like this:
└─cpp/
├─ CMakeLists.txt
├─ myfunctions.h
└─ mytests.cpp
- Clone and add
googletest
to this directory:
└─cpp/
├─ googletest/
├─ CMakeLists.txt
├─ myfunctions.h
└─ mytests.cpp
- Open your
CMakeLists.txt
and enter the following:
cmake_minimum_required(VERSION 3.12) # version can be different
project(my_cpp_project) #name of your project
add_subdirectory(googletest) # add googletest subdirectory
include_directories(googletest/include) # this is so we can #include <gtest/gtest.h>
add_executable(mytests mytests.cpp) # add this executable
target_link_libraries(mytests PRIVATE gtest) # link google test to this executable
- Contents of
myfunctions.h
for the example:
#ifndef _ADD_H
#define _ADD_H
int add(int a, int b)
{
return a + b;
}
#endif
- Contents of
mytests.cpp
for the example:
#include <gtest/gtest.h>
#include "myfunctions.h"
TEST(myfunctions, add)
{
GTEST_ASSERT_EQ(add(10, 22), 32);
}
int main(int argc, char* argv[])
{
::testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}
Now you just have to run the tests. There are multiple ways to do that.
In the terminal, create a build/
dir in cpp/
:
mkdir build
Your directory should now look like this:
└─cpp/
├─ build/
├─ googletest/
├─ CMakeLists.txt
├─ myfunctions.h
└─ mytests.cpp
Next go into the build
directory:
cd build
Then run:
cmake ..
make
./mytests
Alternative way:
- Install the
CMake Tools
extension for VS Code - In the bottom bar, you can see the current target (in square brackets Build [mytest] and Run [mytest])you want to build / run:
- Then just click the run button.
Building Google test itself
Using terminal:
- Go into the dir
/home/user/Desktop/projects/cpp/googletest
- Create
build/
inside it so that it looks like following:
└─cpp/googletest/
├─ build/
├─ ...other googletest files
cd build
- Run:
cmake -Dgtest_build_samples=ON -DCMAKE_BUILD_TYPE=Debug ..
make -j4
./googletest/sample1_unittest
Using VS-Code
- Open the
googletest
folder into VS Code - CMake extension will prompt for configuration, allow it
- You will see a
.vscode
directory. Inside it issettings.json
file, open it, and add the following to it:
"cmake.configureSettings": { "gtest_build_samples": "ON" }
- Build and run from the buttons in the bottom bar
这篇关于如何在 VS Code 中运行测试和调试 Google Test 项目?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文