googletest编译与使用…
编译
github下载源码:https://github.com/google/googletest.git
下载最新的版本,解压,进入目录:
1 2 3 4 5 6 7 8 9 10
| mkdir build cd build # cmake -Dgtest_build_tests=ON -Dgmock_build_tests=ON ${GTEST_REPO_DIR} .. cmake -Dgtest_build_tests=on -DCMAKE_INSTALL_PREFIX=. .. make make install # 在build文件下有include/和lib/,添加到任意工程使用。
# run test. All tests should pass. make test
|
编译时添加头文件./googletest/include, 或者./googlemock/include。以及库文件./build/lib/libgtest.a或者其他对应的库文件,根据需要拷贝添加。
使用
例子:
1 2 3 4 5 6 7 8 9 10 11 12
| #include "gtest/gtest.h" int test(int a, int b) { return a + b; } TEST(test, AddTest) { EXPECT_EQ(4, test(2, 2)); } int main(int argc, char **argv) { ::testing::InitGoogleTest(&argc, argv); return RUN_ALL_TESTS(); }
|
编译,其中的路径可以添加自己的绝对路径:
1 2 3
| g++ mytest.cpp -I./googletest/include/ -L./build/lib/ -lgtest -lgtest_main -lpthread -std=c++11 -o mytest
./mytest
|
当然,googletest有提供sample(./googletest/samples/)