Tôi đang sử dụng CMake để xây dựng dự án của mình. Tôi đã thêm một nhị phân kiểm tra đơn vị đang sử dụng khung kiểm tra đơn vị Boost. Một nhị phân này chứa tất cả các bài kiểm tra đơn vị. Tôi đã thêm tệp nhị phân đó để được chạy bởi CTest:
ADD_EXECUTABLE( tftest test-main.cpp )
ENABLE_TESTING()
ADD_TEST( UnitTests tftest)
Nhưng đầu ra bản dựng trong Visual Studio chỉ hiển thị kết quả của việc chạy CTest:
Start 1: UnitTests
1/1 Test #1: UnitTests ................***Failed 0.05 sec
0% tests passed, 1 tests failed out of 1
Điều này không hữu ích lắm, vì tôi không thể thấy thử nghiệm nào không thành công. Nếu tôi chạy ctest theo cách thủ công từ dòng lệnh, --verbose
tôi nhận được kết quả từ kiểm tra đơn vị Boost cho biết điều gì thực sự không thành công:
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
Vì vậy, tôi cần thay đổi những gì trong CMakeLists.txt để CTest chạy --verbose
mọi lúc? Có cách nào tốt hơn để sử dụng các bài kiểm tra đơn vị Boost với CMake / CTest không?