Dengan pembangunan aplikasi web, automasi ujian telah menjadi elemen yang sangat diperlukan. Dalam artikel ini, kami akan meneroka Laravel Dusk, alat berkuasa rangka kerja Laravel untuk ujian UI automatik. Laravel Dusk menyediakan API mudah untuk menjalankan penyemak imbas tanpa kepala untuk mengesahkan bahawa aplikasi web anda berfungsi seperti yang diharapkan dengan mensimulasikan interaksi pengguna.
Apakah faedah menggunakan Laravel Dusk untuk ujian UI automatik?
Seterusnya, mari kita lihat cara menggunakan Laravel Dusk untuk ujian UI automatik dalam Laravel.
Prasyarat:
Langkah 1: Pasang Laravel Dusk
Laravel Dusk adalah sebahagian daripada rangka kerja Laravel, jadi kita perlu memasang rangka kerja Laravel terlebih dahulu. Untuk memasang rangka kerja Laravel, jalankan arahan berikut:
$ composer create-project --prefer-dist laravel/laravel project-name
Seterusnya, kita perlu memasang Laravel Dusk dengan menjalankan arahan berikut:
$ composer require --dev laravel/dusk
Langkah 2: Sediakan Senja
Sebaik sahaja anda memasang Laravel Dusk, anda perlu melakukan beberapa langkah persediaan sebelum anda boleh mula menguji.
Pertama, Senja memerlukan fail .env.dusk.local, yang merupakan lanjutan daripada fail .env dan mengandungi pembolehubah persekitaran untuk ujian. Anda boleh mencipta fail .env.dusk.local dengan:
$ cp .env .env.dusk.local
Tukar kandungan dalam fail .env.dusk.local untuk memenuhi keperluan ujian anda.
Laravel Dusk juga memerlukan pangkalan data SQLite untuk menyimpan data yang digunakan semasa ujian. Anda boleh mencipta pangkalan data dengan melaksanakan:
$ touch database/database.sqlite
Akhir sekali, daftarkan pengakses dalam AppServiceProvider anda yang mengarahkan Dusk menggunakan ChromeDriver PHPUnit.
public function register() { if ($this->app->environment('local', 'testing')) { $this->app->register(DuskServiceProvider::class); } }
Langkah 3: Tulis ujian
Sekarang, anda boleh mula menulis ujian Senja pertama anda. Untuk menulis ujian, buat direktori ujian/Pelayar dan buat kelas ujian penyemak imbas baharu di dalamnya.
Gunakan Artisan maker untuk membuat fail ini dengan mudah, jalankan arahan berikut:
$ php artisan dusk:make LoginTest
Menjalankan arahan ini akan mencipta fail kelas ujian baharu bernama LoginTest.php, sila kemas kini mengikut contoh berikut kod Fail ini:
<?php namespace TestsBrowser; use LaravelDuskBrowser; use TestsDuskTestCase; class LoginTest extends DuskTestCase { /** * A Dusk test example. * * @return void */ public function testLogin() { $this->browse(function (Browser $browser) { $browser->visit('/login') ->type('email', 'example@domain.com') ->type('password', 'password') ->press('Login') ->assertPathIs('/home'); }); } }
Contoh ini menguji membuka aplikasi setempat dalam Chrome, kemudian memasukkan data sampel pada halaman log masuk, mengklik butang log masuk dan kemudian mengesahkan bahawa laluan ubah hala ialah "/home".
Akhir sekali, jalankan arahan berikut untuk menjalankan ujian:
php artisan dusk
Tahniah! Anda kini telah menyelesaikan tutorial permulaan dengan Laravel Dusk. Menggunakan Laravel Dusk, anda boleh menulis ujian UI automatik dengan mudah untuk memastikan aplikasi anda berfungsi seperti yang diharapkan.
Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk menggunakan Laravel Dusk untuk ujian UI automatik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!