16 марта 2026 г. (изменено: 16 марта 2026 г.)
Канал: @cherkashindev
Недавно фиксил баг у себя в блоге, и заодно нужно было покрыть тестами парсер тегов для телеграм-постов.
В какой-то момент вспомнил, что в 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 тут ощущаются заметно сильнее.
Ещё по теме:
А вы чем гоняете тесты?
🔥 — Vitest
👍 — Jest
❤️ — Что-то другое (напишу в комментариях)