J'utilise CMake pour construire mon projet. J'ai ajouté un binaire de test unitaire qui utilise le cadre de test unitaire Boost. Ce binaire contient tous les tests unitaires. J'ai ajouté ce binaire à exécuter par CTest:
ADD_EXECUTABLE( tftest test-main.cpp )
ENABLE_TESTING()
ADD_TEST( UnitTests tftest)
Mais la sortie de génération dans Visual Studio affiche uniquement le résultat de l'exécution de CTest:
Start 1: UnitTests
1/1 Test #1: UnitTests ................***Failed 0.05 sec
0% tests passed, 1 tests failed out of 1
Ce n'est pas très utile, car je ne vois pas quel test a échoué. Si j'exécute ctest manuellement à partir de la ligne de commande avec, --verbose
j'obtiens la sortie d'un test unitaire Boost qui indique ce qui a réellement échoué:
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
Alors, que dois-je changer dans le CMakeLists.txt pour que CTest fonctionne --verbose
à tout moment? Existe-t-il une meilleure façon d'utiliser les tests unitaires Boost avec CMake / CTest?