Распространенные ошибки
Не удается найти модуль './relative-path'
Если вы получаете ошибку "модуль не найден", это может указывать на несколько причин:
- Вы указали неверный путь. Убедитесь, что путь верен.
- Возможно, вы полагаетесь на
baseUrlв вашемtsconfig.json. Vite по умолчанию не учитываетtsconfig.json, поэтому вам может потребоваться установитьvite-tsconfig-pathsсамостоятельно, если вы используете эту функциональность.
- Возможно, вы полагаетесь на
import { defineConfig } from 'vitest/config';
import tsconfigPaths from 'vite-tsconfig-paths';
export default defineConfig({
plugins: [tsconfigPaths()],
});Или измените путь так, чтобы он не был относительным к корню проекта:
- import helpers from 'src/helpers'
+ import helpers from '../src/helpers'- Убедитесь, что вы не используете относительные алиасы. Vite рассматривает их как относительные к файлу, из которого производится импорт, а не к корню проекта.
import { defineConfig } from 'vitest/config';
export default defineConfig({
test: {
alias: {
'@/': './src/',
'@/': new URL('./src/', import.meta.url).pathname,
},
},
});Не удалось завершить работу воркера
Эта ошибка может возникнуть при использовании fetch из NodeJS с настройкой pool: 'threads' по умолчанию. Эта проблема отслеживается в Timeout abort can leave process(es) running in the background #3077.
В качестве временного решения вы можете переключиться на pool: 'forks' или pool: 'vmForks'.
import { defineConfig } from 'vitest/config';
export default defineConfig({
test: {
pool: 'forks',
},
});vitest --pool=forksОшибки сегментации и ошибки нативного кода
Запуск нативных модулей NodeJS в pool: 'threads' может привести к загадочным ошибкам нативного кода.
Segmentation fault (core dumped)thread '<unnamed>' panicked at 'assertion failedAbort trap: 6internal error: entered unreachable code
В этих случаях нативный модуль, скорее всего, не поддерживает многопоточность. В качестве временного решения вы можете переключиться на pool: 'forks', который запускает тестовые случаи в нескольких node:child_process вместо нескольких node:worker_threads.
import { defineConfig } from 'vitest/config';
export default defineConfig({
test: {
pool: 'forks',
},
});vitest --pool=forks