crpcut

Software screenshot:
crpcut
Software informatie:
Versie: 1.9.2
Upload datum: 20 Feb 15
Ontwikkelaar: Bjorn Fahller
Licentie: Gratis
Populariteit: 77

Rating: 3.0/5 (Total Votes: 2)

crpcut (uitgesproken als "onzin cut") is de Gecompartimenteerde Robuuste Posix C ++ Unit Tester. Met crpcut is het gemakkelijk om tests die andere unit-toetsingskaders niet kan beheren schrijven.
Inleidende voorbeeld:
Een voorbeeld testen van onderdelen van de std :: string:
& Nbsp; #include
& Nbsp; #include
& Nbsp; struct apastr // competitieprogramma voor mosts testen
& Nbsp; {
& Nbsp; apastr (): s ("apa") {}
& Nbsp; std :: string s;
& Nbsp;};
& Nbsp; TestSuite (basics)
& 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 (at, apastr,
& Nbsp; DEPENDS_ON (default_constr_and_destr))
& Nbsp; {
& Nbsp; ASSERT_EQ (s.at (1), 'p');
& Nbsp;}
& Nbsp;}
& Nbsp; TestSuite (fouten, DEPENDS_ON (ALL_TESTS (basics)))
& 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; terug crpcut :: test_case_factory :: run_test (argc, argv);
& Nbsp;}
Vergelijkbare testen profiteert van zijn gegroepeerd in-test-suites. Test-suites kunnen afhankelijk zijn van andere test suites, wat betekent dat de informatie testen alleen wordt uitgevoerd als alle testen het hangt af van met succes hebben afgerond. De resultaten kunnen worden gevalideerd met behulp van een aantal ASSERT macro's. Tests kunnen armaturen gebruiken om gemeenschappelijke inhoud uit te drukken. Tests kunnen worden verwacht om af te sluiten bij uitzondering, of sterven. Verwachtingen die niet worden gehaald zijn fouten. Berichten op stderr en stdout zijn gaught, en opgenomen in het resultaat log.
Waarom crpcut
Het belangrijkste is dat het gemakkelijk om tests te schrijven. Met crpcut, focus je op je testen structuur en testlogica, niet op de door uw testomgeving grenzen.
Met crpcut, elke testcase draait in zijn eigen proces en zijn eigen werkmap. Als een test case mislukt, het proces eindigt onmiddellijk, voordat het verder kwaad doet. Dit betekent dat elke test case begint met een schone lei, niet beïnvloed door andere tests. Dit is de verkokering.
Het betekent ook dat het testpakket blijft, zelfs wanneer een test crasht. U kunt de termijnen vastgesteld voor testcases, en als de toegestane tijd is serieus debetsaldo wordt de testcase proces gedood. Deze twee vormen de robuustheid deel.
U kunt afhankelijkheden te definiëren tussen testcases en tussen testsuites, zodat als een fundamentele test mislukt, de tests die zijn gebaseerd op het fundamentele functionaliteit zal ook niet worden uitgevoerd.
De crpcut belangrijkste proces heeft geen dynamisch geheugen op het moment dat een testcase wordt gestart toegewezen, zodat u kunt uitvoeren crpcut behulp van een memory test tool, zoals valgrind, en als er wordt geheugen toegewezen als de testcase proces beëindigd, gaat u kan ervan verzekerd zijn dat u een geheugenlek in uw test hebben gevonden.
Als u een multi-core CPU, kan het nuttig zijn om een ​​aantal testcases parallel lopen. crpcut maakt dat.
Als er bestanden achtergelaten in het testproces 'working directory na de test case proces is beëindigd, wordt de testcase als mislukt beschouwd. De werkmap wordt ongemoeid gelaten door crpcut, voor u om te onderzoeken

Wat is nieuw in deze release:.

  • Deze versie ondersteunt distributies met oude versies van CMake.

Wat is nieuw in versie 1.9.1:

  • libcrpcut_basic.so werd gebouwd maar niet geïnstalleerd

Wat is nieuw in versie 1.8.4:

  • Dit is een kleine bugfix versie corrigeren valgrind instrumentatie problemen , testen afhankelijkheden en defecte testduur attribuut in XML-rapporten.

Wat is nieuw in versie 1.8.2:

  • Deze minor functie enhancement maakt de command line parameter - -timeout-multiplier = factor nu hebben ook effect op de time-outs voor de armatuur opbouw en afbraak.

Wat is nieuw in versie 1.8.1:

  • Deze minor functie enhancement maakt de command line parameter - -timeout-multiplier = factor nu hebben ook effect op de time-outs voor de armatuur opbouw en afbraak.

Wat is nieuw in versie 1.7.2:

  • Deze versie lost een kleine bug met de NO_CORE_FILE-test modifier die zich hebben voorgedaan op Linux als / proc / sys / kernel / core_pattern beschreven piping de core dump om een ​​programma in plaats van het opslaan van een bestand.

Wat is nieuw in versie 1.6.1:

  • Dit is een patch voor een bug die in sommige gevallen veroorzaakt misvormde XML-uitvoer door het missen van een dicht op de lijst blocked_tests.

Wat is nieuw in versie 1.6.0:

  • De nieuwe functies zijn een extra optionele parameter om ASSERT_THROW () en VERIFY_THROW () waarbij de waarde van een uitzondering object controleert, twee istream gebaseerde versie van get_parameter () om waarden doorgegeven vanaf de command line te halen, en een optie om te bouwen libcrpcut als statische of gedeelde bibliotheek.

Wat is nieuw in versie 1.5.0:

  • De belangrijkste nieuwe feature is tagging van de tests. Tags zijn een test selectiemethode loodrecht op die van testsuites. De markeringen kunnen worden gebruikt om onderscheid te maken tussen test die kritische (bijv regressies) zijn en test die niet-kritische (bijvoorbeeld de functionaliteit momenteel gewerkt.)
  • Experimentele ondersteuning is ook beschikbaar voor het versieren van testrapporten met, bijvoorbeeld, ANSI-kleuren ontsnapt.

Vergelijkbare software

Reacties op crpcut

Reacties niet gevonden
Commentaar toe te voegen
Zet op de beelden!