2015-02-25 14 views
7

La mia domanda è simile a Using cmake how do I get verbose output from ctest?CMake output dettagliato da prove

Come faccio a "make test" per visualizzare l'output verboso? Voglio "make test" per fare la stessa cosa di ctest -V attraverso la riga di comando.

Ho provato ad aggiungere il seguente al mio CMakeLists.txt, niente ha funzionato :(

set(ENV{CTEST_OUTPUT_ON_FAILURE} TRUE) 

add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --verbose) 

add_custom_command(TARGET test PRE_BUILD 
       COMMAND ${CMAKE_CTEST_COMMAND} -V) 

Ma io ancora ottenere questo quando ho eseguito make test:

Start 1: unittest1 
    1/143 Test #1: unittest1 .................................... Passed 0.01 sec 
     Start 2: unittest2 
    2/143 Test #2: unittest2 ............................ Passed 0.03 sec 
     Start 3: unittest3 
    3/143 Test #3: unittest3 .................... Passed 0.02 sec 

Per chiarire, io voglio per aggiungere qualcosa al mio CMakeLists.txt per rendere possibile tutto ciò, non voglio una soluzione manuale che mi imponga di aggiungere qualcosa a "make test" nella riga di comando come

CTEST_OUTPUT_ON_FAILURE=TRUE make test 

o

ctest -V 

risposta

5

da GNU Radio pagina wiki sul fare test sui moduli out-of-tree (per gentile concessione di Mr. Braun):

Run ctest -V dalla cartella di compilazione (di solito), e ti fornirà informazioni dettagliate. Aggiungi -R regex per eseguire solo i test che corrispondono a regex.

Ora, rieseguire un test in caso di errore sembra avere molto senso per me - e non farlo automaticamente su ogni make test, poiché i test potrebbero richiedere molto tempo e non dovrebbero essere ripetuto in un ambiente di build danneggiato ecc. per impostazione predefinita.

MODIFICA: come aggiungere questo comportamento al comportamento predefinito make test dipende dall'infrastruttura di CMake e non posso rispondere senza leggere il codice.

+0

Grazie! Quando faccio ctest -V ottengo esattamente l'output test che voglio! Come faccio ad includere il flag verboso nel mio file CMakeLists.txt in modo che "make test" abbia automaticamente un output dettagliato – crusarovid

+0

Grazie per le gentili parole; se non ti dispiace, mi piacerebbe davvero un upvote;) –

Problemi correlati