2011-01-23 3 views
31

Sono un neofita del mondo di Unit Testing, in pratica sono uno sviluppatore C++ che lavora su un prodotto di grandi dimensioni da quasi 3 anni, e ora ho deciso di eseguire test automatici del mio codice. Per questo faccio molte ricerche su internet e sono imbattuto in molti strumenti e framework e infine scelto i seguenti due: 1) Boost di prova biblioteche 2) Google framework di test per C++Boost Test Vs Google Test Framework

Ora sono confuso su cui scegli tra quelli Se qualcuno usa uno dei precedenti, per favore condividi la tua esperienza.

+0

La risposta per la vecchia domanda SO ["boost.test vs. CppUnit"] (http://stackoverflow.com/questions/3100322/boost-test-vs-cppunit) confronta Boost e Google Test. – aponomarenko

risposta

7

Se si sta già utilizzando Boost libraries, quindi attenersi ad amplificare prova Libs. Dovrebbe occuparsi della maggior parte dei requisiti di registrazione. In caso contrario, è consigliabile il test di Google. L'ho usato in un grande progetto e l'ho trovato più facile da usare. Soprattutto i messaggi di errore del compilatore sono più facili da individuare in GTEST; boost utilizza i modelli.

Non ho mai scritto test complicati utilizzando una di queste due librerie. Per i test semplici, ognuno di loro andrebbe bene. Anche se google-test ti farà risparmiare tempo di compilazione.

Boost-test con boost-log è davvero una buona combinazione. Provalo!

+1

A partire dalla versione 1.7, gtest utilizza anche modelli e il messaggio di errore del compilatore è quello che ci si può aspettare - orribile. – Martin

4

Suggerisco di dare un'occhiata a googlemock, un superset di googletest. Googlemock ha tutte le funzionalità di test di googletest e le capacità di simulazione di googlemock.