Download and install GTest
Pull the Github depository into your local disk:
git clone https://github.com/google/googletest
cd googletest
Run the command cmake -DCMAKE_BUILD_TYPE=DEBUG
, if the outputs are as follows:
The C compiler identification is AppleClang 10.0.0.10001044
The CXX compiler identification is AppleClang 10.0.0.10001044
Then we are going to modify the original CMakeList.txt
, the following contents should be added into the configure file:
cmake_minimum_required(VERSION 2.8.8)
# THIS HAS TO COME BEFORE THE PROJECT LINE
set(CMAKE_C_COMPILER "/usr/local/Cellar/gcc/8.3.0/bin/gcc-8") # your gcc path
set(CMAKE_CXX_COMPILER "/usr/local/Cellar/gcc/8.3.0/bin/g++-8") # your g++ path
# THIS HAS TO COME BEFORE THE PROJECT LINE
project(googletest-distribution)
After these operations, we can make and install GTest:
cmake .
make && sudo make install
The file libgets*.a
, include
will be included in /usr/local/lib
and /usr/local/include
The usage of GTest
Create a test file:
#include <gtest/gtest.h>
// Demonstrate some basic assertions.
TEST(HelloTest, BasicAssertions) {
// Expect two strings not to be equal.
EXPECT_STRNE("hello", "world");
// Expect equality.
EXPECT_EQ(7 * 6, 42);
}
GTEST_API_ int main(int argc, char ** argv) {
testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}
You must include main
function in your file.
Run the following comand to compile this file:
g++ test.cpp -lgtest -lpthread -std=c++14 -o main
You must use -std=c++14
to compile your file.