Vitest là test framework xây trên Vite với API tương thích Jest — reuse Vite config và transforms nên không cần cấu hình riêng cho test, nhanh hơn nhờ esbuild và native ESM.
- Migrate dễ — từ Jest thường chỉ cần đổi import và config (
vitest.config.tsthayjest.config.js). - Watch mode thông minh — chỉ chạy lại test liên quan đến file thay đổi, dựa trên module graph của Vite.
- In-source testing — viết test ngay trong source file trong block
if (import.meta.vitest); test bị tree-shake khỏi production build, hữu ích cho utility functions. - Browser mode — chạy test trong browser thật (Chromium/Firefox) thay vì jsdom — hành vi DOM chính xác, phù hợp component tests.
- Tính năng khác —
test.concurrent()chạy test song song trong describe; snapshot tương thích Jest + inline snapshot; coverage bằng V8 (nhanh hơn) hoặc Istanbul;@vitest/uiđể visualize và debug test trên browser. - Khác biệt với Jest — dùng ES modules natively (không transform), một số global như
__dirnamecần config thêm.