]> Sergey Matveev's repositories - stargrave-blog.git/commitdiff
sharness радует
authorSergey Matveev <stargrave@stargrave.org>
Sun, 24 Jan 2021 22:01:30 +0000 (01:01 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Sun, 24 Jan 2021 22:01:30 +0000 (01:01 +0300)
https://github.com/chriscool/sharness
https://testanything.org/
В d0ffbdd295c1583abde17388553038f39747b0cc упоминал что я для тестов в
goredo использовал sharness библиотеку. Просто делается её source, и она
предоставляет простой API, который может сделать проверки и вывести ok
или не ok для TAP протокола тестирования. sharness это вынесенная
библиотека тестирования используемая в Git. В прошлом году познакомился
и с TAP протоколом (простейший способ объяснения запускалке тестов всё
ли в порядке). TAP радует своей простотой и тем, что prove утилита
позволяет запускать тесты параллельно автоматом.

sharness до недавнего времени использовал по сути только как штуку
которая выводит нужные TAP сообщения. Но, он автоматически создаёт
временную директорию и подчищает её после завершения теста. В нём есть
"cleanup" функи позволяющие добавлять команды очистки за собой (например
убить процесс). Есть проверки на выставленные зависимости/prerequisites.
Есть возможность запуска с --debug или --verbose-ом. Есть даже
возможность test_pause-ом прямо во время выполнения теста провалится в
shell временной директории, что невероятно удобно оказалось когда у меня
как-раз запущенные процессы в фоне есть. Сплошные мелочи, но очень
приятные для работы и отладки.


No differences found