Cursus Raku / Geavanceerd / Testen en documentatie 🆕 / Testen
De Test-module
Laad de testtools met use Test. De meest basale controle
is ok, die slaagt wanneer de voorwaarde waar is. Elke
controle accepteert een optionele beschrijving:
use Test;
ok 1 == 1, 'one equals one';
ok 2 > 1, 'two is greater';
done-testing;Dit geeft de volgende uitvoer, in het standaard testformaat bekend als TAP:
ok 1 - one equals one
ok 2 - two is greater
1..2Elke geslaagde controle wordt gerapporteerd als ok met
het nummer en de beschrijving; een falende controle zou
not ok zijn. De laatste regel 1..2 is het
plan, dat aangeeft hoeveel tests er zijn uitgevoerd. De
done-testing-aanroep aan het einde genereert dat plan
automatisch.
Wanneer je een specifieke waarde verwacht, is is
duidelijker dan ok, omdat het bij een fout zowel de
verwachte als de werkelijke waarde toont:
use Test;
is 2 + 2, 4, 'addition works';
done-testing;Dit geeft ok 1 - addition works. Om die rapportage in
actie te zien, geef je is een verkeerde verwachting:
use Test;
is 2 + 2, 5, 'addition works';
done-testing;Nu faalt de controle, en de uitvoer legt precies uit hoe:
not ok 1 - addition works
# Failed test 'addition works'
# at test.raku line 3
# expected: '5'
# got: '4'
1..1
# You failed 1 test of 1De not ok-regel markeert de fout, en de diagnostische
regels eronder tonen wat verwacht werd tegenover wat er daadwerkelijk
uitkwam — daarom is is nuttiger dan een kale
ok wanneer een specifieke waarde van belang is.
ok, is en done-testing zijn al
voldoende om een bruikbaar testbestand te schrijven; het volgende
onderwerp voegt de andere
vergelijkingen toe.
Praktijk
Maak de 1 quiz over de inhoud van dit onderwerp.
Cursusnavigatie
← Testen | Quiz — Testen →
💪 Of ga direct naar
de oefeningen in deze sectie.