相关疑难解决方法(0)

使用CMake,如何从CTest获得详细输出?

我正在使用CMake来构建我的项目.我添加了一个使用Boost单元测试框架的单元测试二进制文件.这个二进制文件包含所有单元测试.我已经添加了由CTest运行的二进制文件:

ADD_EXECUTABLE( tftest test-main.cpp )
ENABLE_TESTING()
ADD_TEST( UnitTests tftest)
Run Code Online (Sandbox Code Playgroud)

但Visual Studio中的构建输出仅显示运行CTest的结果:

      Start 1: UnitTests
  1/1 Test #1: UnitTests ................***Failed    0.05 sec

  0% tests passed, 1 tests failed out of 1
Run Code Online (Sandbox Code Playgroud)

这不是很有用,因为我看不出哪个测试失败了.如果我从命令行手动运行ctest,--verbose我得到Boost单元测试的输出,它告诉实际失败的是什么:

1: Test command: tftest.exe
1: Test timeout computed to be: 9.99988e+006
1: Running 4 test cases...
1: test-main.cpp(20): error in "sanity_check3": check 1 == 2 failed
1:
1: *** 1 failure detected in test suite "Master Test Suite"
1/1 Test #1: UnitTests ................***Failed    0.00 sec
Run Code Online (Sandbox Code Playgroud)

那么,我需要在CMakeLists.txt中进行哪些更改才能让CTest --verbose …

cmake ctest

94
推荐指数
11
解决办法
4万
查看次数

标签 统计

cmake ×1

ctest ×1