Pembangunan Laravel: Bagaimana untuk menggunakan Laravel Dusk dan Selenium untuk ujian pelayar?
Apabila aplikasi web menjadi semakin kompleks, kita perlu memastikan setiap bahagiannya berfungsi dengan baik. Ujian penyemak imbas ialah kaedah ujian biasa yang digunakan untuk memastikan ketepatan dan kestabilan aplikasi di bawah pelbagai pelayar. Dalam pembangunan Laravel, anda boleh menggunakan Laravel Dusk dan Selenium untuk ujian pelayar. Artikel ini menerangkan cara menggunakan kedua-dua alat ini untuk ujian.
1. Konsep asas Laravel Dusk
Laravel Dusk ialah alat ujian pelayar rasmi Laravel. Ia menggunakan API Selenium WebDriver untuk memacu ujian berdasarkan pelayar Chrome dan Firefox serta menyediakan API yang ringkas dan jelas. Menggunakan Laravel Dusk, anda boleh menulis ujian dengan mudah dan mengautomasikan pelaksanaan berbilang ujian. Mengautomatikkan ujian boleh meningkatkan liputan ujian sambil juga mengurangkan masa yang diperlukan untuk ujian manual.
Pasang Laravel Dusk
Sebelum anda memulakan ujian, anda mesti memasang Laravel Dusk terlebih dahulu ke dalam projek Laravel anda. Laravel Dusk boleh dipasang menggunakan Composer, menggunakan arahan berikut:
composer require --dev laravel/dusk
Laravel Dusk memerlukan pangkalan data baharu untuk menyimpan data yang dibuat semasa ujian. Pangkalan data ini boleh dikonfigurasikan dalam persekitaran ujian .env:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=dusk DB_USERNAME=root DB_PASSWORD=
Selepas itu, jalankan arahan berikut untuk melakukan beberapa pemasangan Senja yang diperlukan:
php artisan dusk:install php artisan dusk:chrome-driver
Senja kini dipasang dan sedia untuk digunakan dalam projek yang digunakan.
2. Menulis ujian Laravel Dusk
Laravel Dusk membolehkan anda mentakrifkan kes ujian dengan cara yang lancar. Kes ujian hendaklah terletak dalam direktori ujian/Pelayar. Setiap kes ujian harus mewarisi kelas DuskTestCase dan menggunakan kaedah senja untuk melancarkan penyemak imbas. Kes ujian boleh dijana menggunakan arahan berikut:
php artisan dusk:make TestExample
Ini akan mencipta ujian yang dipanggil TestExample dalam direktori ujian/Pelayar.
Setiap kes ujian hendaklah mengandungi kaedah ujian, yang mentakrifkan langkah pelaksanaan kes ujian. Dalam kaedah ujian, anda boleh menggunakan API yang disediakan oleh Laravel Dusk untuk mensimulasikan tingkah laku pengguna dan menegaskan keputusan ujian yang dijangkakan. Contohnya:
$this->browse(function ($browser) { $browser->visit('/login') ->type('email', 'john@example.com') ->type('password', 'password') ->press('Login') ->assertPathIs('/home'); });
Ini menguji log masuk ke aplikasi dan memastikan untuk mengubah hala ke halaman /home selepas log masuk. Ujian ini menggunakan kaedah lawatan untuk mengakses halaman /log masuk. Kemudian, gunakan kaedah jenis untuk mengisi medan e-mel dan kata laluan dan kaedah tekan untuk menyerahkan borang. Akhir sekali, gunakan kaedah assertPathIs untuk menegaskan sama ada URL halaman adalah /home.
3. Konfigurasi Selenium WebDriver
Selenium WebDriver ialah alat ujian automatik yang menyokong pelbagai penyemak imbas. Senja menggunakan API Selenium untuk mengendalikan pelayar dan melakukan ujian. Untuk menggunakan Selenium, binari WebDriver yang sepadan perlu dimuat turun. Binari WebDriver ialah pemacu antara penyemak imbas dan Selenium. Perduaan WebDriver boleh dimuat turun daripada:
Chrome: https://sites.google.com/a/chromium.org/chromedriver/downloads
Firefox: https://github com/. mozilla/geckodriver/releases
Selepas memuat turun, letakkan binari WebDriver dalam direktori akar projek Laravel anda.
Secara lalai, Dusk menggunakan Google Chrome sebagai penyemak imbas. Untuk menggunakan Firefox, anda boleh menetapkannya dalam fail konfigurasi .dusk.php:
'driver' => 'firefox'
4. Gunakan Dusk untuk menjalankan ujian
Selepas memasang Laravel Dusk dan menulis kes ujian, anda boleh menggunakan arahan berikut untuk menjalankan ujian :
php artisan dusk
Ini akan melancarkan Chrome dan melakukan ujian penyemak imbas. Selepas ujian selesai, keputusan ujian boleh dilihat dalam tetingkap terminal.
Anda boleh menggunakan pilihan --group untuk menjalankan kumpulan ujian tertentu:
php artisan dusk --group=login
Ujian penyemak imbas dengan Laravel Dusk
Ujian penyemak imbas adalah penting untuk memastikan aplikasi anda berjalan dengan tepat One daripada kaedah. Gunakan Laravel Dusk dan Selenium WebDriver untuk menulis ujian penyemak imbas automatik dan mengesahkan ketepatan dan kestabilan aplikasi anda. Menggunakan kaedah yang diperkenalkan dalam artikel ini, anda boleh menulis kes ujian untuk melaksanakan ujian penyemak imbas dengan cepat.
Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk menggunakan Laravel Dusk dan Selenium untuk ujian pelayar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!