Skip to content
Vitest 2
Main Navigation LeitfadenAPIKonfigurationBrowser-ModusFortgeschritten
2.1.9
1.6.1
0.34.6

Deutsch

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
日本語
한국어
Italiano
Polski
Türkçe
čeština
magyar

Deutsch

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
日本語
한국어
Italiano
Polski
Türkçe
čeština
magyar

Aussehen

Sidebar Navigation

Warum Vitest

Erste Schritte

Features

Arbeitsbereich

Kommandozeilenschnittstelle

Testfilter

Reporter

Codeabdeckung (Coverage)

Snapshot

Mocking

Typen testen

Vitest UI

In-Source-Testing

Testkontext

Testumgebung

Erweiterung von Matchern

IDE-Integration

Debugging

Vergleiche mit anderen Test-Runnern

Migrationsleitfaden

Häufige Fehler

Profiling Test Performance

Leistungsverbesserung

Auf dieser Seite

Debugging ​

TIP

Beim Debuggen von Tests kann es hilfreich sein, das CLI-Argument --test-timeout zu verwenden, um zu verhindern, dass Tests bei Haltepunkten in einen Timeout laufen.

VS Code ​

Eine schnelle Methode, Tests in VS Code zu debuggen, ist die Verwendung des JavaScript Debug Terminal. Öffnen Sie ein neues JavaScript Debug Terminal und führen Sie npm run test oder vitest direkt aus. Diese Methode funktioniert mit jedem Code, der in Node.js ausgeführt wird, und ist somit mit den meisten JS-Test-Frameworks kompatibel.

image

Alternativ können Sie eine spezielle Startkonfiguration hinzufügen, um eine Testdatei in VS Code zu debuggen:

json
{
  // Weitere Informationen finden Sie unter: https://go.microsoft.com/fwlink/?linkid=830387
  "version": "0.2.0",
  "configurations": [
    {
      "type": "node",
      "request": "launch",
      "name": "Aktuelle Testdatei debuggen",
      "autoAttachChildProcesses": true,
      "skipFiles": ["<node_internals>/**", "**/node_modules/**"],
      "program": "${workspaceRoot}/node_modules/vitest/vitest.mjs",
      "args": ["run", "${relativeFile}"],
      "smartStep": true,
      "console": "integratedTerminal"
    }
  ]
}

Wählen Sie anschließend im Debug-Tab 'Aktuelle Testdatei debuggen' aus. Öffnen Sie die Testdatei, die Sie debuggen möchten, und drücken Sie F5, um das Debugging zu starten.

Browser-Modus ​

Um den Vitest Browser-Modus zu debuggen, geben Sie --inspect oder --inspect-brk in der CLI an oder definieren Sie dies in Ihrer Vitest-Konfiguration:

bash
vitest --inspect-brk --browser --no-file-parallelism
ts
import { defineConfig } from 'vitest/config';

export default defineConfig({
  test: {
    inspectBrk: true,
    fileParallelism: false,
    browser: {
      name: 'chromium',
      provider: 'playwright',
    },
  },
});

Standardmäßig verwendet Vitest Port 9229 für das Debugging. Sie können diesen Port überschreiben, indem Sie --inspect-brk einen Wert zuweisen:

bash
vitest --inspect-brk=127.0.0.1:3000 --browser --no-file-parallelism

Verwenden Sie die folgende VSCode Compound-Konfiguration, um Vitest zu starten und den Debugger im Browser zu verbinden:

json
{
  "version": "0.2.0",
  "configurations": [
    {
      "type": "node",
      "request": "launch",
      "name": "Vitest im Browser ausführen",
      "program": "${workspaceRoot}/node_modules/vitest/vitest.mjs",
      "console": "integratedTerminal",
      "args": ["--inspect-brk", "--browser", "--no-file-parallelism"]
    },
    {
      "type": "chrome",
      "request": "attach",
      "name": "An Browser-Debugger anhängen",
      "port": 9229
    }
  ],
  "compounds": [
    {
      "name": "Vitest Browser debuggen",
      "configurations": ["An Browser-Debugger anhängen", "Vitest im Browser ausführen"],
      "stopAll": true
    }
  ]
}

IntelliJ IDEA ​

Erstellen Sie eine Vitest Ausführungskonfiguration. Verwenden Sie die folgenden Einstellungen, um alle Tests im Debug-Modus auszuführen:

EinstellungWert
Arbeitsverzeichnis/path/to/your-project-root

Führen Sie diese Konfiguration dann im Debug-Modus aus. Die IDE stoppt an den im Editor gesetzten JS/TS-Haltepunkten.

Node Inspector, z.B. Chrome DevTools ​

Vitest unterstützt auch das Debuggen von Tests ohne die Verwendung von IDEs. Dies setzt jedoch voraus, dass Tests nicht parallel ausgeführt werden. Verwenden Sie einen der folgenden Befehle, um Vitest zu starten:

sh
# In einem einzelnen Worker ausführen
vitest --inspect-brk --pool threads --poolOptions.threads.singleThread

# In einem einzelnen Child-Prozess ausführen
vitest --inspect-brk --pool forks --poolOptions.forks.singleFork

# Im Browser-Modus ausführen
vitest --inspect-brk --browser --no-file-parallelism

Wenn Sie Vitest 1.1 oder höher verwenden, können Sie auch einfach das Flag --no-file-parallelism angeben:

sh
# Wenn der Pool unbekannt ist
vitest --inspect-brk --no-file-parallelism

Sobald Vitest startet, hält es die Ausführung an und wartet darauf, dass Sie Entwicklungstools öffnen, die eine Verbindung zum Node.js Inspector herstellen können. Hierfür können Sie Chrome DevTools verwenden, indem Sie chrome://inspect im Browser öffnen.

Im Watch-Modus können Sie den Debugger während erneuter Testläufe geöffnet lassen, indem Sie die Option --poolOptions.threads.isolate false verwenden.

Pager
Vorherige SeiteIDE-Integration
Nächste SeiteVergleiche mit anderen Test-Runnern

Veröffentlicht unter der MIT-Lizenz.

Copyright (c) 2024 Mithril Contributors

https://v2.vitest.dev/guide/debugging

Veröffentlicht unter der MIT-Lizenz.

Copyright (c) 2024 Mithril Contributors