Skip to main content

Konsolentests

In Laravel können Sie Tests für Artisan-Befehle einschließlich Ein- und Ausgaben knapp und übersichtlich schreiben.
Diese Seite ist auf die aktuelle Konsolentest-API von Laravel abgestimmt und behandelt auch expectsSearch zur Prüfung der Sucheingabe von Laravel Prompts.

Einführung

Sie führen einen Befehl mit der Methode artisan aus und prüfen die Erwartungen über Method Chaining.

Erfolgs- / Fehler-Assertions

Über den Exit-Status können Sie entscheiden, ob der Befehl erfolgreich war oder fehlgeschlagen ist.

Erwartete Ein- / Ausgaben

Eingabe-Erwartungen

Sie können Benutzeraktionen für Fragen und Sucheingaben mocken.

Ausgabe-Erwartungen

Sie können exakte Übereinstimmung, Teilstring-Übereinstimmung und Tabellenausgaben prüfen.

Bestätigungs-Erwartungen

Für Ja/Nein-Bestätigungsprompts verwenden Sie expectsConfirmation.

Konsolen-Events

Standardmäßig werden CommandStarting und CommandFinished bei Testausführung nicht ausgelöst. Fügen Sie in Testklassen, in denen Sie Events prüfen möchten, den Trait WithConsoleEvents hinzu.
Wenn Sie WithConsoleEvents nur in den Tests einsetzen, in denen Sie es tatsächlich benötigen, bleibt die normale Testgeschwindigkeit erhalten.
Zuletzt geändert am 13. Juli 2026