crpcut

Software screenshot:
crpcut
Software detaljer:
Version: 1.9.2
Upload dato: 20 Feb 15
Udvikler: Bjorn Fahller
Licens: Gratis
Popularitet: 5

Rating: nan/5 (Total Votes: 0)

crpcut (udtales "lort cut") er den rumopdelt Robust Posix C ++ Unit Tester. Med crpcut er det nemt at skrive tests, andre unit-test rammer ikke kan klare.
Indledende eksempel:
Et eksempel teste dele af std :: string:
& Nbsp; #include
& Nbsp; #include
& Nbsp; struct apastr // armatur for mosts tests
& 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 (på, apastr,
& Nbsp; DEPENDS_ON (default_constr_and_destr))
& Nbsp; {
& Nbsp; ASSERT_EQ (s.at (1), 'p');
& Nbsp;}
& Nbsp;}
& nbsp; TESTSUITE (fejl, 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; returnere crpcut :: test_case_factory :: run_test (argc, argv);
& Nbsp;}
Lignende test fordele ved at være grupperet i test-suiter. Test-suiter kan stole på andre test-suiter, hvilket betyder, at de indeholdte prøver kun vil køre, hvis alle prøver det afhænger har gennemført med succes. Resultaterne kan valideres ved hjælp af en række assert makroer. Tests kan bruge inventar til at udtrykke fælles indhold. Tests kan forventes at afslutte med undtagelse, eller dø. Forventninger, der ikke er opfyldt er fejl. Meddelelser på stderr og stdout er gaught, og indgår i resultatet log.
Hvorfor crpcut
Vigtigst skal det være let at skrive tests. Med crpcut, fokuserer du på din test struktur og test logik, ikke på de grænser, som din testmiljø.
Med crpcut hver testcase kører i sin egen proces og sin egen arbejdsmappe. Hvis en prøvesag mislykkes, processen afsluttes med det samme, før det gør yderligere skade. Dette betyder at hver test tilfælde starter fra en ren tavle, upåvirket af andre tests. Dette er en opdeling.
Det betyder også, at testen suite fortsætter, selv hvis en test går ned. Du kan fastsættes frister for prøvesager, og hvis den tilladte tid er alvorligt overtræk, bliver prøvesag proces dræbt. Disse to udgør robusthed del.
Du kan definere afhængigheder mellem testcases og mellem test suiter, således at hvis en grundlæggende test mislykkes, de forsøg, der er baseret på den grundlæggende funktionalitet vil ikke engang blive kørt.
Den crpcut vigtigste proces har ikke nogen dynamisk hukommelse allokeret på det tidspunkt en prøvesag proces er startet, så du kan køre crpcut hjælp af en hukommelse testværktøj, såsom Valgrind, og hvis der er hukommelse allokeret når prøvesag proces afsluttes, du kan være sikker på at du har fundet en hukommelsesfejl i din test.
Hvis du har en multi-core CPU, kan det være en fordel at køre flere testcases parallelt. crpcut tillader det.
Hvis der findes filer tilbage i testprocessen 'arbejder mappe efter prøvesag processen har opsagt, bliver prøvesag betragtes mislykkedes. Arbejdsmappen efterlades uberørt af crpcut, for dig at undersøge

Hvad er nyt i denne udgivelse:.

  • Denne version støtter distributioner med gamle versioner af CMake.

Hvad er nyt i version 1.9.1:

  • libcrpcut_basic.so blev bygget, men ikke installeret

Hvad er nyt i version 1.8.4:

  • Dette er en mindre bugfix release berigtigelse Valgrind instrumentering problemer , test afhængigheder og defekt test varighed attribut i XML rapporter.

Hvad er nyt i version 1.8.2:

  • Dette mindre træk ekstraudstyr gør kommandolinjeparameteren - -timeout-multiplikator = faktor nu også have effekt på timeouts til fastgørelse konstruktion og destruktion.

Hvad er nyt i version 1.8.1:

  • Dette mindre træk ekstraudstyr gør kommandolinjeparameteren - -timeout-multiplikator = faktor nu også have effekt på timeouts til fastgørelse konstruktion og destruktion.

Hvad er nyt i version 1.7.2:

  • Denne version løser en mindre fejl med NO_CORE_FILE test modifier, som fandt sted på Linux når / proc / sys / kernel / core_pattern beskrevet rørsystemer kernen dump til et program i stedet for at gemme i en fil.

Hvad er nyt i version 1.6.1:

  • Dette er en patch til en fejl, der i nogle tilfælde forårsagede forkert udformet XML-output ved mangler et nært på listen blocked_tests.

Hvad er nyt i version 1.6.0:

  • De nye funktioner er en ekstra valgfri parameter til ASSERT_THROW () og VERIFY_THROW (), som kontrollerer værdien af ​​en undtagelse objekt, to istream baseret version af get_parameter () for at vælge værdier gik fra kommandolinjen, og en mulighed for at opbygge libcrpcut som statisk eller delt bibliotek.

Hvad er nyt i version 1.5.0:

  • Den store nye funktion er tagging af tests. Tags er en test udvælgelsesmetode vinkelret på den for testsuites. Kan også bruges Tags at skelne mellem test, der er kritiske (f.eks regressioner) og test, der er ikke-kritiske (f.eks funktionaliteten i øjeblikket arbejdet på.)
  • Eksperimentel support er også tilgængelig til dekoration testrapporter med for eksempel ANSI-color undslipper.

Lignende software

PyZen
PyZen

12 May 15

Peon
Peon

20 Feb 15

MPI-IO Test
MPI-IO Test

2 Jun 15

eutester
eutester

20 Feb 15

Kommentarer til crpcut

Kommentarer ikke fundet
Tilføj kommentar
Tænd billeder!