Come posso saltare un test dell'unità BOOST? Vorrei saltare alcuni dei miei test di unità in modo programmatico a seconda (ad esempio) della piattaforma su cui li sto eseguendo. La mia soluzione attuale è:Come saltare un test dell'unità BOOST?
#define REQUIRE_LINUX char * os_cpu = getenv("OS_CPU"); if (os_cpu != "Linux-x86_64") return;
BOOST_AUTO_TEST_CASE(onlylinux) {
REQUIRE_LINUX
...
the rest of the test code.
}
(notare che il nostro ambiente di build imposta la variabile OS_CPU). Questo sembra brutto e soggetto a errori, e anche i silenziosi salti potrebbero far saltare i test agli utenti senza saperlo.
Come posso saltare in modo pulito i test dell'unità di spinta basati su una logica arbitraria?
non posso usare ifdefs, alcuni di questi criteri deve essere determinare in esecuzione in tempo. Probabilmente userò qualcosa come il tuo suggerimento di registrazione, grazie. – dbn