kdevelop单元测试与gtest

时间:2018-05-10 13:17:32

标签: c++ unit-testing googletest kdevelop

我有一个gtest cmake项目,可以使用kdevelop进行编译和调试。从版本4.5开始,kdevelop可以处理单元测试。我找不到将测试集成到kdevelop“Unit-Tests”的方法。有谁知道怎么做?

1 个答案:

答案 0 :(得分:0)

要使测试二进制文件显示在Kdevelop(在5.3中进行测试)的“单元测试”选项卡中,您需要使CTest能够识别您的测试用例。 如果您有专用的CMakeLists.txt用于测试可执行文件,则最小配置如下所示:

set (SOURCES
  testsource.cpp
)

add_executable(testexecutable ${SOURCES})

target_link_libraries(testexecutable
  gtest
)

add_test(
  NAME test
  COMMAND testexecutable )

要使其与标准CMake配置运行一起使用,还需要添加

enable_testing()

您的CMake项目中的某个地方,例如您的主要CMake文件。

我在这里找到了更多文档: https://cmake.org/cmake/help/latest/command/add_test.html https://gitlab.kitware.com/cmake/community/wikis/doc/ctest/Testing-With-CTest

请注意,这只会将测试用例二进制文件的基本执行添加到KDevelop GUI。我所知道的GUI中没有自定义或过滤功能。

您还可以查看针对gmake / ctest的gtest特定定义。我没有尝试任何这些,因为我停留在尚不支持这些的CMake版本中。 https://blog.kitware.com/dynamic-google-test-discovery-in-cmake-3-10/