Domanda

Sto programmando alcuni test di unità con il quadro di prova di Google. Ma voglio verificare se alcuni afferma sono ben posizionati e sono utili. Esiste un modo per catturare un'asserzione in test di Google?

Esempio di codice in prova:

int factorial(int n){
    assert(n >= 0);
    //....
}

E poi il test:

#include <gtest/gtest.h>
TEST(FactorialTest,assertNegative){
    EXPECT_ANY_THROW({
         factorial(-1);
    });
}

Ma EXPECT_ANY_THROW non cattura l'asserzione ma solo eccezioni. Sto cercando una soluzione per cattura afferma.

È stato utile?

Soluzione

Test Google fornisce ASSERT_DEATH, EXPECT_DEATH e altre macro relativi .

Questa domanda e Quali sono Google prova, test di morte sono l'un l'altro di risposte. Fa che li rendono duplicati, o no? ; -)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top