Heim > PHP-Framework > Laravel > Laravel-Entwicklung: Wie verwende ich Laravel Dusk und Selenium für Browsertests?

Laravel-Entwicklung: Wie verwende ich Laravel Dusk und Selenium für Browsertests?

王林
Freigeben: 2023-06-14 13:53:27
Original
1138 Leute haben es durchsucht

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
Nach dem Login kopieren

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=
Nach dem Login kopieren

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
Nach dem Login kopieren

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
Nach dem Login kopieren

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');
});
Nach dem Login kopieren

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'
Nach dem Login kopieren

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
Nach dem Login kopieren

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
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage