Was ist Laravel Dusk
Laravel Dusk ist ein E2E-Testwerkzeug, das den Browser tatsächlich steuert und den gesamten Bildschirm prüft.Standardmäßig können Sie Tests ohne separaten Selenium-Server direkt mit ChromeDriver ausführen.
Installation
Installieren Sie zuerst Google Chrome und dann Dusk als Dev-Abhängigkeit.Umgebung (.env.dusk.local)
Für Dusk-spezifische Umgebungsvariablen legen Sie im Projekt-Root eine .env.dusk.{environment} an.Lokal also
.env.dusk.local.
.env gesichert und der Inhalt der .env.dusk.local temporär angewendet.
Einfacher Browser-Test
Test erzeugen und mitphp artisan dusk starten.
Beispiel
visit(), type(), press(), assertSee().
Page-Object-Muster
Für komplexe Seiten erleichtertdusk:page das Wartungsprofil.
tests/Browser/Pages/Login.php definieren Sie url() und elements(), die Sie in Tests wiederverwenden.
Screenshots und Debugging
Für die Fehlersuche sind Screenshots und Konsolen-Logs wertvoll.- Screenshots:
tests/Browser/screenshots - Konsolen-Logs:
tests/Browser/console
Ausführung in CI (GitHub Actions)
Starten Sie in GitHub Actions ChromeDriver und den Laravel-Server, dannphp artisan dusk.
Dusk-Ausführungsablauf
Offizielle Dokumentation
Laravel Dusk — Offizielle Doku
Details zu allen APIs (Warten, Assertions, Tastatur, iframes u. a.) finden Sie in der offiziellen Dokumentation.