googletest初体验
References
- Google Test
- https://github.com/google/googletest/blob/master/docs/primer.md
- https://github.com/google/googletest/blob/master/docs/advanced.md
- Google Mock
- https://github.com/google/googletest/blob/master/docs/gmock_for_dummies.md
- https://github.com/google/googletest/blob/master/docs/gmock_cheat_sheet.md
- https://github.com/google/googletest/blob/master/docs/gmock_cook_book.md
Build googletest to generate library files .a
https://github.com/google/googletest/blob/master/googletest/README.md
git clone https://github.com/google/googletest.git -b release-1.10.0
cd googletest # Main directory of the cloned repository.
mkdir build # Create a directory to hold the build output.
cd build
cmake .. # Generate native build scripts for GoogleTest.
Then you will get the needed .a files, just like following:
Install googletest to /usr/local directory
make
sudo make install # Install in /usr/local/ by default
备注:/usr/local在编译器的默认搜索路径中,可以直接使用该目录下的头文件和lib
Run samples
In the googletest git repository, you can find some samples. Follow the below steps and run the samples.
Take sample1_unittest.cc
for example.
g++ -g -std=c++11 -c sample1_unittest.cc sample1.cc ## compile to generate .o files
g++ -g -o a.out sample1.o sample1_unittest.o /usr/local/lib/libgtest.a /usr/local/lib/libgtest_main.a ## link to generate .out file
./a.out. ## run tests
或者使用如下命令:
g++ -g -std=c++11 -c sample1_unittest.cc sample1.cc ## compile to generate .o files
## /usr/local/lib在默认的lib搜索路径中
## 注意-lgtest对应的是libgtest.a
g++ -lgtest -lgtest_main -o a.out sample1.o sample1_unittest.o -v ## link to generate .out file
./a.out. ## run tests