Ho un numero di casi di test Boost ordinati in diverse suite di test. Alcuni casi di test ne hanno uno, alcuni più di un assegno.Come dire a Boost.Test di fermarsi al primo caso di test fallito?
Tuttavia, quando si eseguono tutti i test, vengono eseguiti tutti, indipendentemente dal numero di errori o passaggi. So che posso interrompere l'esecuzione di un test case con diversi controlli utilizzando BOOST_REQUIRE
anziché BOOST_CHECK
. Ma non è quello che voglio.
Come posso dire a Boost di interrompere l'intera esecuzione dopo il primo caso di test fallito? Preferirei una soluzione compilata (ad esempio realizzata con un dispositivo globale) su una soluzione runtime (cioè i parametri di runtime).
BOOST_REQUIRE_THROW genererà un'eccezione in modo che l'esecuzione dell'intera suite di test venga interrotta. – TemplateRex
Grazie a @rhalbersma. Ci proverò. Perché non ne fai una risposta? –
Ehm, perché dopo una lettura più attenta del manuale Boost.Test, il suggerimento era impreciso. BOOST_REQUIRE_THROW è un test unitario per verificare se viene lanciata un'eccezione. Non si lancia da solo. – TemplateRex