Clion + GoogleTest实现单元测试
环境准备
下载googletest源码
https://github.com/google/googletest/releases/tag/release-1.10.0
 
应用到项目
这里只使用googletest功能:
 
CmakeList.txt
# cmake最低版本号要求
cmake_minimum_required(VERSION 3.14)
# 项目名
project(Main)
set(CMAKE_CXX_STANDARD 14)
# 添加头文件
include_directories(
        ${CMAKE_CURRENT_SOURCE_DIR}/include
        ${CMAKE_CURRENT_SOURCE_DIR}/googletest/include
)
# 添加下级目录,生成.a文件
add_subdirectory(./googletest)
# 添加连接库
link_directories(
        ${CMAKE_CURRENT_SOURCE_DIR}/lib
        ${CMAKE_CURRENT_SOURCE_DIR}/googletest
)
set(SOURCE_FLIES
        main.cpp
        lib/add.cpp
        include/add.h
        )
# 指定可执行文件的生成位置
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/bin")
# 指定生成目标
add_executable(MainTest ${SOURCE_FLIES})
# 将目标文件与库文件进行链接
target_link_libraries(MainTest gtest)
add.h和add.cpp就是一个简单的求和函数
main.cpp:
#include "add.h"
#include "gtest/gtest.h"
TEST(TestCase,test1 ){
    ASSERT_EQ(12,add(4,8));
}
TEST(TestCase,test2){
    EXPECT_EQ(5,add(2,3));
}
TEST(TestCase,test3){
    EXPECT_EQ(3,add(1,2));
}
int main(int argc, char **argv)
{
    testing::InitGoogleTest(&argc, argv);
    return RUN_ALL_TESTS();
}
执行效果(也可以单独执行某个case)
 
 
                     
                    
                 
                    
                
 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号