Skip to main content

Was ist Testbench Workbench?

Orchestra Testbench ist auf Tests ausgelegt. In Kombination mit Workbench können Sie jedoch eine kleine Laravel-Anwendung innerhalb Ihres Paket-Repositorys erstellen und lokal ausführen. Nutzen Sie Workbench als Ergänzung zu den in package-testing gebauten Tests, wenn Sie UI-Prüfungen, Routen-Sanity-Checks oder Datenprüfungen mit Seeder machen wollen.

Einrichtung

1

Testbench installieren

2

Workbench anlegen

Der Befehl erledigt zusammen:
  • die Ordnerstruktur workbench/ anzulegen,
  • den Workbench-Namensraum in autoload-dev der composer.json einzutragen,
  • Build-Skripte in scripts der composer.json zu ergänzen.
Zusätzliche Optionen:
  • --force: überschreibt bestehende Dateien
  • --basic: schlanke Variante ohne Routen und Package Discovery
  • --devtool: aktiviert DevTool-Unterstützung
3

Bauen und starten

workbench:install richtet den Ordner workbench/, den Eintrag in autoload-dev und die zugehörigen Skripte gemeinsam ein.
Nach der Installation stehen in Ihrer composer.json folgende Skripte:

Umgebung mit testbench.yaml definieren

Das Verhalten der Workbench steuern Sie über die Datei testbench.yaml im Projekt-Root.
Da testbench.yaml umgebungsspezifische Einstellungen enthalten kann, ist es empfehlenswert, sie in .gitignore einzutragen. Stellen Sie stattdessen eine Vorlage testbench.yaml.example ins Repository.
Wichtige Konfigurationsoptionen: Auch Umgebungsvariablen lassen sich in testbench.yaml pflegen.

Struktur des Ordners workbench

workbench
app
Models
bootstrap
config
database
factories
migrations
public
storage

Wichtige Funktionen der Workbench

WorkbenchServiceProvider

Legen Sie einen Workbench-eigenen Service Provider an, um Demo-Registrierungen vorzunehmen.

Routen und Controller

Legen Sie Testrouten in workbench/routes/web.php oder workbench/routes/api.php ab.

Migrationen und Seeder

Mit workbench/database/migrations und workbench/database/seeders prüfen Sie das Paket in einer datenrealistischen Umgebung.
Der Seeder erzeugt Testdaten.

Service-Start und Prüfung über CLI

Artisan-Befehle führen Sie über vendor/bin/testbench aus.

Tests mit dem Trait WithWorkbench

Mit dem Trait WithWorkbench werden die Einstellungen aus testbench.yaml auch in automatischen Tests aktiv.

Zusammenspiel mit Tests

Wenn Sie die Workbench als „manuelle Prüfung / Demo-App” und die Testbench-Tests als „automatische Verifikation” verstehen, ist der Betrieb klarer:
  • Automatisiert: tests/ schützt vor Regressionen.
  • Manuell: workbench/ prüft UI, User-Flow und integriertes Verhalten.

Fehlerbehebung

Prüfen Sie Syntax und Provider-Einträge in testbench.yaml. Häufig sind YAML-Einrückungen die Ursache.
Prüfen Sie den Pfad Ihrer Routendatei und die Registrierung im WorkbenchServiceProvider. Stellen Sie sicher, dass discovers.web in testbench.yaml auf true steht.
Prüfen Sie die Migrationspfade. Bei SQLite muss der Build-Schritt create-sqlite-db enthalten sein.

Verwandte Seiten

Laravel-Pakete mit Orchestra Testbench testen

Zunächst die Testgrundlage für Pakete aufbauen.

Versionskompatibilität von Paketen verwalten

Kompatibilitätsmatrix von Laravel/Testbench und Betrieb der CI-Matrix.
Zuletzt geändert am 13. Juli 2026