Курс по Raku / Напреднали / Тестване и документация 🆕 / Тестване 🆕
Модулът Test
Заредете инструментите за тестване с use Test.
Най-основната проверка е ok, която минава, когато условието
е вярно. Всяка проверка приема незадължително описание:
use Test;
ok 1 == 1, 'one equals one';
ok 2 > 1, 'two is greater';
done-testing;Изпълнението на това извежда в стандартния тестов формат, известен като TAP:
ok 1 - one equals one
ok 2 - two is greater
1..2Всяка успешна проверка се отчита като ok с нейния номер
и описание; неуспешна би била not ok. Последният ред
1..2 е планът, който указва колко теста са се
изпълнили. Извикването на done-testing в края автоматично
извежда този план.
Когато очаквате конкретна стойност, is е по-ясно от
ok, защото при неуспех отчита както очакваната, така и
действителната стойност:
use Test;
is 2 + 2, 4, 'addition works';
done-testing;Това извежда ok 1 - addition works. За да видите
отчитането в действие, дайте на is грешно очакване:
use Test;
is 2 + 2, 5, 'addition works';
done-testing;Сега проверката се проваля и резултатът обяснява точно как:
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 1Редът not ok маркира неуспеха, а диагностичните редове
под него показват какво е било очаквано спрямо това, което действително
е излязло — затова is е по-полезно от обикновено
ok, когато конкретна стойност е от значение.
ok, is и done-testing вече са
достатъчни за писане на полезен тестов файл; следващата тема добавя другите сравнения.
Практика
Направете 1 тест върху съдържанието на тази тема.
Навигация в курса
← Тестване 🆕 | Тест — Тестване →
💪 Или преминете направо към упражненията в този
раздел.