Laravel-Entwicklung: Wie verwende ich Laravel Dusk und Selenium für Browsertests?
Da Webanwendungen immer komplexer werden, müssen wir sicherstellen, dass jeder Teil davon ordnungsgemäß funktioniert. Browsertests sind eine gängige Testmethode, mit der die Korrektheit und Stabilität einer Anwendung unter verschiedenen Browsern sichergestellt werden soll. In der Laravel-Entwicklung können Sie Laravel Dusk und Selenium für Browsertests verwenden. In diesem Artikel wird erläutert, wie Sie diese beiden Tools zum Testen verwenden.
1. Grundkonzepte von Laravel Dusk
Laravel Dusk ist das offizielle Browser-Testtool von Laravel. Es verwendet die Selenium WebDriver-API, um browserbasierte Chrome- und Firefox-Tests durchzuführen, und bietet eine prägnante und klare API. Mit Laravel Dusk können Sie ganz einfach Tests schreiben und die Ausführung mehrerer Tests automatisieren. Die Automatisierung von Tests kann die Testabdeckung verbessern und gleichzeitig den Zeitaufwand für manuelle Tests reduzieren.
Installieren Sie Laravel Dusk
Bevor Sie mit dem Testen beginnen, müssen Sie zunächst Laravel Dusk in Ihrem Laravel-Projekt installieren. Laravel Dusk kann mit Composer mit dem folgenden Befehl installiert werden:
composer require --dev laravel/dusk
Laravel Dusk erfordert eine neue Datenbank, um die während des Tests erstellten Daten zu speichern. Diese Datenbank kann in der .env-Testumgebung konfiguriert werden:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=dusk DB_USERNAME=root DB_PASSWORD=
Führen Sie anschließend die folgenden Befehle aus, um einige notwendige Installationen von Dusk durchzuführen:
php artisan dusk:install php artisan dusk:chrome-driver
Dusk ist jetzt installiert und kann im Projekt verwendet werden.
2. Laravel Dusk-Tests schreiben
Mit Laravel Dusk können Sie Testfälle auf flüssige Weise definieren. Testfälle sollten sich im Verzeichnis Tests/Browser befinden. Jeder Testfall sollte die DuskTestCase-Klasse erben und die Dusk-Methode zum Starten des Browsers verwenden. Testfälle können mit dem folgenden Befehl generiert werden:
php artisan dusk:make TestExample
Dadurch wird ein Test namens TestExample im Verzeichnis Tests/Browser erstellt.
Jeder Testfall sollte eine Testmethode enthalten, die die Ausführungsschritte des Testfalls definiert. Bei der Testmethode können Sie die von Laravel Dusk bereitgestellte API verwenden, um Benutzerverhalten zu simulieren und die erwarteten Ergebnisse des Tests zu bestätigen. Zum Beispiel:
$this->browse(function ($browser) { $browser->visit('/login') ->type('email', 'john@example.com') ->type('password', 'password') ->press('Login') ->assertPathIs('/home'); });
Dies testet die Anmeldung bei der Anwendung und stellt sicher, dass nach der Anmeldung zur Seite /home weitergeleitet wird. Dieser Test verwendet die Visit-Methode, um auf die Seite /login zuzugreifen. Verwenden Sie dann die Methode „type“, um die E-Mail- und Passwortfelder auszufüllen, und die Methode „press“, um das Formular abzusenden. Verwenden Sie abschließend die Methode „assertPathIs“, um festzustellen, ob die Seiten-URL /home lautet.
3. Selenium WebDriver-Konfiguration
Selenium WebDriver ist ein automatisiertes Testtool, das verschiedene Browser unterstützt. Dusk verwendet die Selenium-API, um Browser zu verwalten und Tests durchzuführen. Um Selenium nutzen zu können, muss die entsprechende WebDriver-Binärdatei heruntergeladen werden. Die WebDriver-Binärdatei ist der Treiber zwischen dem Browser und Selenium. WebDriver-Binärdateien können heruntergeladen werden von:
Chrome: https://sites.google.com/a/chromium.org/chromedriver/downloads
Firefox: https://github.com/mozilla/geckodriver/releases
After Beim Herunterladen platzieren Sie die WebDriver-Binärdatei im Stammverzeichnis Ihres Laravel-Projekts.
Standardmäßig verwendet Dusk Google Chrome als Browser. Um Firefox zu verwenden, können Sie es in der Konfigurationsdatei .dusk.php festlegen:
'driver' => 'firefox'
4. Führen Sie den Test mit Dusk aus
Nachdem Sie Laravel Dusk installiert und den Testfall geschrieben haben, können Sie den Test mit dem folgenden Befehl ausführen:
php artisan dusk
Dadurch wird der Chrome-Browser gestartet und ein Browsertest durchgeführt. Nach Abschluss des Tests können die Testergebnisse im Terminalfenster angezeigt werden.
Sie können die Option --group verwenden, um eine bestimmte Testgruppe auszuführen:
php artisan dusk --group=login
Browsertests mit Laravel Dusk
Browsertests sind eine der wichtigen Methoden, um sicherzustellen, dass Ihre Anwendung korrekt ausgeführt wird. Verwenden Sie Laravel Dusk und Selenium WebDriver, um automatisierte Browsertests zu schreiben und die Richtigkeit und Stabilität Ihrer Anwendung zu überprüfen. Mit der in diesem Artikel vorgestellten Methode können Sie Testfälle schreiben, um schnell Browsertests durchzuführen.
Das obige ist der detaillierte Inhalt vonLaravel-Entwicklung: Wie verwende ich Laravel Dusk und Selenium für Browsertests?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!