В какой-то момент вспомнил, что в Node.js уже есть встроенный тест-раннер. Решил не тащить лишние зависимости и просто проверить, насколько он вообще живой. В итоге оказалось, что для таких задач — более чем ок. https://github.com/acherkashin/acherkashin.github.io/blob/main/tests/telegram-tags.util.test.ts import assert from 'node:assert/strict'; import test from 'node:test'; test('extracts multiple hashtags from a single line', () => { const tags = extractTelegramTagsFromMarkdown('#frontend #testing #astro'); assert.deepEqual(tags, ['frontend', 'testing', 'astro']); }); Что ещё приятно — тесты можно писать на чистом TypeScript без установки дополнительных пакетов. Для утилит, парсеров, серверного кода и прочих небольших юнит-тестов этого раннера вполне хватает. Но если у вас фронтенд-проект и нужны тесты компонентов, браузерное окружение, снапшоты, расширенные матчеры и привычная экосистема вокруг раннера, то Jest или Vitest тут ощущаются заметно сильнее. Ещё по теме: - Докум
Недавно фиксил баг у себя в блоге, и заодно нужно было покрыть тестами парсер тегов для телеграм-постов
16 марта16 мар
1 мин