Фреймворк для тестирования Python: помогает писать небольшие тесты и подходит для сложного функционального тестирования приложений и библиотек.
vitest-dev/vitest
Фреймворк для модульного и компонентного тестирования на базе Vite, использующий его конфигурацию, трансформеры и плагины.
Open source альтернатива:Jest
- Звёзды
- 17,270
- Форки
- 2,096
- Открытые issues
- 361
- Последний коммит
- 43 минуты назад
Что это?
Vitest — фреймворк для тестирования JavaScript и TypeScript на базе Vite. Тесты запускаются с той же конфигурацией, трансформерами, резолверами и плагинами, что и приложение, поэтому не нужно отдельно настраивать сборку для тестов. В Vitest есть API в стиле Jest и встроенные проверки Chai, совместимые с expect из Jest, а также снапшоты, моки, стабы и шпионы.
Фреймворк подходит для разных видов тестирования. Он поддерживает watch mode, в котором повторно запускаются только затронутые тесты, сбор покрытия кода средствами v8 или istanbul и эмуляцию DOM через JSDOM или happy-dom. В Browser Mode компонентные тесты выполняются в настоящем браузере; доступны примеры для Vue, React, Svelte, Lit и Marko. Для бенчмаркинга используется Tinybench, а для тестирования типов — expect-type.
Для работы Vitest требуется Vite версии 6.4.0 или новее и Node версии 22.12.0 или новее.
Ключевые возможности
- 01Использует конфигурацию Vite, трансформеры и плагины для тестов.
- 02Совместимый с Jest API expect, встроенные проверки Chai и снапшоты.
- 03Watch mode, который быстро перезапускает затронутые тесты.
- 04Сбор покрытия кода средствами v8 или istanbul.
- 05Browser Mode для компонентных тестов в настоящем браузере.
- 06Встроенный бенчмаркинг на Tinybench и тестирование типов с expect-type.
Сценарии использования
- Модульное тестирование фронтенда на Vite или проекта на TypeScript для Node.js.
- Компонентное тестирование Vue, React, Svelte или Lit в настоящем браузере.
- Перенос набора тестов с Jest на более быстрый раннер, нативно интегрированный с Vite.
- Измерение покрытия кода и запуск проверок типов в CI.
В подборках
Темы
Частые вопросы
- Что такое vitest?
- Фреймворк для модульного и компонентного тестирования на базе Vite, использующий его конфигурацию, трансформеры и плагины. Vitest — фреймворк для тестирования JavaScript и TypeScript на базе Vite. Тесты запускаются с той же конфигурацией, трансформерами, резолверами и плагинами, что и приложение, поэтому не нужно отдельно настраивать сборку для тестов. В Vitest есть API в стиле Jest и встроенные проверки Chai, совместимые с expect из Jest, а также снапшоты, моки, стабы и шпионы.
- vitest можно использовать бесплатно? Какая у него лицензия?
- vitest распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- vitest всё ещё поддерживается?
- Активно поддерживается. Последний коммит в vitest — 22 окт. 2026 г..
- Для чего можно использовать vitest?
- Модульное тестирование фронтенда на Vite или проекта на TypeScript для Node.js. Компонентное тестирование Vue, React, Svelte или Lit в настоящем браузере. Перенос набора тестов с Jest на более быстрый раннер, нативно интегрированный с Vite. Измерение покрытия кода и запуск проверок типов в CI.
- Где скачать vitest?
- Исходный код и инструкции по установке — на GitHub: https://github.com/vitest-dev/vitest
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Jest — фреймворк для тестирования JavaScript со встроенными проверками, моками, snapshot-тестированием и интерактивным watch mode.
Лёгкий набор утилит для тестирования React DOM: он позволяет находить элементы и взаимодействовать с компонентами так, как это делают пользователи.
Hurl — CLI-инструмент для выполнения и тестирования HTTP-запросов, записанных в текстовом файле.
Единый набор инструментов для веб-разработки: Vite, Vitest, Oxlint, Oxfmt, Rolldown и tsdown доступны через CLI `vp`, который также управляет средой выполнения и пакетными менеджерами.
Cypress — JavaScript-фреймворк для end-to-end- и компонентного тестирования всего, что работает в браузере.