Sık Karşılaşılan Hatalar
'./relative-path' modülü bulunamıyor
Bir modülün bulunamadığına dair bir hata almanız, birkaç farklı nedenden kaynaklanabilir.
- Yol yanlış yazılmış olabilir. Yolun doğru olduğundan emin olun.
tsconfig.json
dosyanızdakibaseUrl
'e güveniyor olabilirsiniz. Vite, varsayılan olaraktsconfig.json
'ı dikkate almaz. Bu nedenle, bu davranışa güveniyorsanızvite-tsconfig-paths
paketini manuel olarak kurmanız gerekebilir.
import { defineConfig } from 'vitest/config';
import tsconfigPaths from 'vite-tsconfig-paths';
export default defineConfig({
plugins: [tsconfigPaths()],
});
Alternatif olarak, yolunuzu köke göreceli olmayacak şekilde yeniden düzenleyebilirsiniz:
- import helpers from 'src/helpers'
+ import helpers from '../src/helpers'
- Göreceli takma adlarınız olmadığından emin olun. Vite, bunları köke göre değil, içe aktarılan dosyaya göre göreceli olarak değerlendirir.
import { defineConfig } from 'vitest/config';
export default defineConfig({
test: {
alias: {
'@/': './src/',
'@/': new URL('./src/', import.meta.url).pathname,
},
},
});
Çalışan sonlandırılamadı
Bu hata, NodeJS'in fetch
'i varsayılan pool: 'threads'
ile kullanıldığında ortaya çıkabilir. Bu sorun Timeout abort can leave process(es) running in the background #3077 başlığı altında takip edilmektedir.
Geçici bir çözüm olarak pool: 'forks'
veya pool: 'vmForks'
seçeneğine geçiş yapabilirsiniz.
import { defineConfig } from 'vitest/config';
export default defineConfig({
test: {
pool: 'forks',
},
});
vitest --pool=forks
Segmentasyon hataları ve yerel kod hataları
pool: 'threads'
içinde yerel NodeJS modüllerini çalıştırmak, yerel koddan kaynaklanan anlaşılması zor hatalara yol açabilir.
Segmentation fault (core dumped)
thread '<unnamed>' panicked at 'assertion failed
Abort trap: 6
internal error: entered unreachable code
Bu durumlarda, yerel modülün çoklu iş parçacığı için güvenli şekilde oluşturulmamış olması muhtemeldir. Geçici bir çözüm olarak, test durumlarını birden fazla node:worker_threads
yerine birden fazla node:child_process
içinde çalıştıran pool: 'forks'
seçeneğine geçiş yapabilirsiniz.
import { defineConfig } from 'vitest/config';
export default defineConfig({
test: {
pool: 'forks',
},
});
vitest --pool=forks