crpcut

Software screenshot:
crpcut
Dettagli del software:
Versione: 1.9.2
Data di caricamento: 20 Feb 15
Sviluppatore: Bjorn Fahller
Licenza: Libero
Popolarità: 77

Rating: 3.0/5 (Total Votes: 2)

crpcut (pronunciato "merda cut") è il ++ Tester Unità Compartmented Robusto Posix C. Con crpcut è facile scrivere test che altri framework unità-test non possono gestire.
Esempio introduttivo:
Un esempio testare parti std :: string:
& Nbsp; #include
& Nbsp; #include
& Nbsp; struct apastr // apparecchio per mosts test
& Nbsp; {
& Nbsp; apastr (): s ("apa") {}
& Nbsp; std :: string s;
& Nbsp;};
& nbsp; suite di test (di base)
& Nbsp; {
& Nbsp; TEST (default_constr_and_destr)
& Nbsp; {
& Nbsp; std :: string s;
& Nbsp; ASSERT_TRUE (s.empty ());
& Nbsp; ASSERT_EQ (s.length (), 0);
& Nbsp;}
& Nbsp; TEST (constr_from_char_array, apastr,
& Nbsp; DEPENDS_ON (default_constr_and_destr))
& Nbsp; {
& Nbsp; ASSERT_EQ (s.length (), 3UL);
& Nbsp;}
& Nbsp; TEST (a, apastr,
& Nbsp; DEPENDS_ON (default_constr_and_destr))
& Nbsp; {
& Nbsp; ASSERT_EQ (s.at (1), 'p');
& Nbsp;}
& Nbsp;}
& nbsp; suite di test (errori, DEPENDS_ON (ALL_TESTS (basi)))
& Nbsp; {
& Nbsp; TEST (at_out_of_range, apastr,
& Nbsp; EXPECT_EXCEPTION (std :: out_of_range))
& Nbsp; {
& Nbsp; s.at (4);
& Nbsp;}
& Nbsp; TEST (index_oper_out_of_range, apastr,
& Nbsp; EXPECT_SIGNAL_DEATH (SIGABRT),
& Nbsp; NO_CORE_FILE)
& Nbsp; {
& Nbsp; s [4];
& Nbsp;}
& Nbsp;}
& Nbsp; int main (int argc, char * argv [])
& Nbsp; {
& Nbsp; tornare crpcut :: :: test_case_factory run_test (argc, argv);
& Nbsp;}
Test simili benefici vengano raggruppati in test-suite. Test-suite possono dipendere da altri test-suite, il che significa che le prove contenute saranno eseguito solo se tutti i test da cui dipende hanno completato con successo. I risultati possono essere convalidati utilizzando una serie di macro ASSERT. I test possono utilizzare apparecchi per esprimere contenuti comuni. I test si può aspettare di uscire per eccezione, o morire. Le aspettative non sono soddisfatte sono errori. Messaggi sul stderr e stdout sono gaught, e inclusi nel registro risultato.
Perché crpcut
La cosa più importante, deve essere facile scrivere dei test. Con crpcut, ci si concentra sulla logica della struttura di test e di prova, non sui limiti imposti dal proprio ambiente di test.
Con crpcut, tutti i casi di test viene eseguito in un proprio processo e la propria directory di lavoro. Se un caso test fallisce, il processo termina immediatamente, prima che lo faccia ulteriori danni. Ciò significa che ogni caso test inizia da una lista pulita, influenzato da altri test. Questa è la compartimentalizzazione.
Significa anche che la suite di test continua, anche se un test si blocca. È possibile impostare le scadenze per i casi di test, e se il tempo consentito è seriamente scoperto, il processo di test case viene ucciso. Questi due costituiscono la parte robustezza.
È possibile definire le dipendenze tra i casi di test e tra le suite di test, in modo che se un test fondamentali non riesce, non sarà nemmeno essere eseguiti i test che si basano sulla funzionalità fondamentale.
Il processo principale crpcut non ha alcuna memoria dinamica allocata al momento un processo di test case viene avviato, in modo da poter eseguire crpcut utilizzando uno strumento di test della memoria, come ad esempio Valgrind, e se la memoria è assegnato quando il processo di test case termina, si può essere certi che hai trovato una perdita di memoria nel tuo test.
Se si dispone di una CPU multi-core, può essere utile per eseguire diversi casi di test in parallelo. crpcut permette.
Se ci sono file lasciati nel processo di test 'directory di lavoro dopo il processo di test case è terminato, il caso di test è considerato fallito. La directory di lavoro viene lasciato intatto dalla crpcut, per voi di esaminare

Cosa c'è di nuovo in questa versione:.

  • Questa versione supporta distribuzioni con le vecchie versioni di CMake.

Cosa c'è di nuovo nella versione 1.9.1:

  • libcrpcut_basic.so è stato costruito ma non installato

Cosa c'è di nuovo nella versione 1.8.4:

  • Si tratta di una versione bugfix minore correzione dei problemi valgrind strumentazione , le dipendenze di prova ed errori di attributo durata della prova nei rapporti XML.

Cosa c'è di nuovo nella versione 1.8.2:

  • Questo miglioramento caratteristica minore rende il parametro della riga di comando - -timeout-moltiplicatore = fattore ora hanno anche effetto sui timeout per la costruzione di dispositivi e distruzione.

Cosa c'è di nuovo nella versione 1.8.1:

  • Questo miglioramento caratteristica minore rende il parametro della riga di comando - -timeout-moltiplicatore = fattore ora hanno anche effetto sui timeout per la costruzione di dispositivi e distruzione.

Cosa c'è di nuovo nella versione 1.7.2:

  • Questa versione corregge un bug minore con il test NO_CORE_FILE modificatore che si è verificato su Linux quando / proc / sys / kernel / core_pattern descritto piping core dump di un programma piuttosto che salvare in un file.

Cosa c'è di nuovo nella versione 1.6.1:

  • Si tratta di una patch per un bug che in alcuni casi causati malformati XML-uscita dalla mancanza di una stretta sulla lista blocked_tests.

Cosa c'è di nuovo nella versione 1.6.0:

  • Le nuove caratteristiche sono un parametro opzionale aggiuntivo ASSERT_THROW () e VERIFY_THROW (), che controlla il valore di un oggetto eccezione, due istream versione basata su get_parameter () per scegliere i valori passati dalla riga di comando, e la possibilità di costruire libcrpcut libreria come statica o in comune.

Cosa c'è di nuovo nella versione 1.5.0:

  • Il principale novità è tagging dei test. I tag sono un metodo di selezione di test ortogonale a quella di suite di test. I tag possono anche essere utilizzati per distinguere tra test che sono critici (es regressioni) e test che sono non-critico (ad esempio la funzionalità attualmente lavorando.)
  • supporto sperimentale è disponibile anche per la decorazione rapporti di prova, per esempio, fughe ANSI-colore.

Programmi simili

lava-test-demo
lava-test-demo

15 Apr 15

Peon
Peon

20 Feb 15

gator-tests
gator-tests

15 Apr 15

nose_fixes
nose_fixes

14 Apr 15

Commenti a crpcut

I commenti non trovato
Aggiungi commento
Accendere le immagini!