Hata Ayıklama
TIP
Testlerde hata ayıklarken, kesme noktalarında durduğunuzda testlerin zaman aşımına uğramasını önlemek için --test-timeout
CLI argümanını kullanmayı düşünebilirsiniz.
VSCode
VSCode'da testlerde hata ayıklamanın hızlı bir yolu JavaScript Debug Terminal
'i kullanmaktır. Yeni bir JavaScript Debug Terminal
açın ve npm run test
veya doğrudan vitest
komutunu çalıştırın. Bu yöntem, Node üzerinde çalışan herhangi bir kodla uyumludur, bu nedenle çoğu JS test çerçevesiyle çalışacaktır.
VSCode'da belirli bir test dosyasında hata ayıklamak için özel bir başlatma yapılandırması ekleyebilirsiniz:
{
// Daha fazla bilgi için: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Debug Current Test File",
"autoAttachChildProcesses": true,
"skipFiles": ["<node_internals>/**", "**/node_modules/**"],
"program": "${workspaceRoot}/node_modules/vitest/vitest.mjs",
"args": ["run", "${relativeFile}"],
"smartStep": true,
"console": "integratedTerminal"
}
]
}
Ardından, hata ayıklama sekmesinde 'Debug Current Test File' seçeneğinin seçili olduğundan emin olun. Hata ayıklamak istediğiniz test dosyasını açın ve F5 tuşuna basarak hata ayıklamayı başlatın.
IntelliJ IDEA
Bir 'Node.js' çalıştırma yapılandırması oluşturun. Hata ayıklama modunda tüm testleri çalıştırmak için aşağıdaki ayarları kullanın:
Ayar | Değer |
---|---|
Çalışma dizini | /proje-kökünüzün/yolu |
JavaScript dosyası | ./node_modules/vitest/vitest.mjs |
Uygulama parametreleri | run --threads false |
Ardından bu yapılandırmayı hata ayıklama modunda çalıştırın. IDE, düzenleyicide ayarlanan JS/TS kesme noktalarında duracaktır.
Node Inspector (Örneğin Chrome Developer Tools)
Vitest, IDE olmadan da testlerde hata ayıklamayı destekler. Ancak bu, testlerin paralel olarak çalıştırılmamasını gerektirir. Vitest'i başlatmak için aşağıdaki komutlardan birini kullanın:
# Tek bir worker'da çalıştırmak için
vitest --inspect-brk --single-thread
# Bir alt işlemde çalıştırmak için
vitest --inspect-brk --single-thread --no-threads
Vitest başlatıldığında çalışmayı durduracak ve NodeJS inspector'a bağlanabilen geliştirici araçlarını açmanızı bekleyecektir. Chrome Geliştirici Araçlarını kullanmak için tarayıcınızda chrome://inspect
adresini açın.
Watch modunda, --single-thread --isolate false
seçeneklerini kullanarak testlerin yeniden çalıştırılması sırasında hata ayıklayıcıyı açık tutabilirsiniz.