Rumah >pembangunan bahagian belakang >tutorial php >Laravel Dusk - Ujian penyemak imbas intuitif dan mudah untuk semua!

Laravel Dusk - Ujian penyemak imbas intuitif dan mudah untuk semua!

Jennifer Aniston
Jennifer Anistonasal
2025-02-10 10:18:11976semak imbas

Laravel Dusk: Menyelaraskan ujian penyemak imbas akhir-ke-akhir untuk aplikasi JavaScript

Artikel ini meneroka Laravel Dusk, perpustakaan pengujian pelayar yang kuat yang direka untuk aplikasi Laravel, terutamanya yang sangat bergantung pada JavaScript, seperti aplikasi satu halaman (SPA). Dusk memudahkan proses ujian akhir-ke-akhir dengan menyediakan API yang konsisten dan ciri debugging yang berguna.

Laravel Dusk - Intuitive and Easy Browser Testing for All!

Kelebihan utama Laravel Dusk:

API Bersatu:
    senja menawarkan API tunggal, intuitif untuk ujian penyemak imbas, tanpa mengira enjin penyemak imbas yang mendasari (Chromedriver lalai, dengan sokongan selenium untuk orang lain).
  • Debugging visual:
  • Ujian gagal secara automatik menjana tangkapan skrin dari negara penyemak imbas pada titik kegagalan, sangat membantu dalam mengenal pasti dan menyelesaikan masalah.
  • sokongan Ajax: senja dengan lancar mengendalikan panggilan Ajax, yang membolehkan anda menguji interaksi tak segerak dan menunggu tindak balas, penting untuk aplikasi web moden.
  • Bermula dengan senja Laravel:

Tutorial menganggap aplikasi Laravel 5.4 baru.

Pemasangan:

Gunakan komposer untuk memasang pakej:

  1. composer require laravel/dusk Daftar

    . Pendekatan yang disyorkan adalah untuk mendaftarkannya secara kondusif dalam
  2. anda untuk mengelakkan memuatkannya dalam pengeluaran:
  3. DuskServiceProvider AppServiceProvider

  4. Jalankan perintah pemasangan:
<code class="language-php">namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Laravel\Dusk\DuskServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    public function register()
    {
        if ($this->app->environment('local', 'testing')) {
            $this->app->register(DuskServiceProvider::class);
        }
    }
}</code>
  1. Ini mewujudkan struktur dan fail direktori yang diperlukan untuk ujian senja anda. php artisan dusk:install
Ujian senja pertama anda:

mari kita buat ujian log masuk yang mudah (dengan andaian anda telah menyediakan perancah pengesahan Laravel menggunakan ):

php artisan make:auth menghasilkan kes ujian senja:

  1. php artisan dusk:make LoginTest Tulis ujian:

  2. Jalankan ujian:
<code class="language-php">class LoginTest extends DuskTestCase
{
    public function testSuccessfulLogin()
    {
        $this->browse(function ($browser) {
            $browser->visit('/login')
                    ->type('email', 'testuser@example.com')
                    ->type('password', 'password')
                    ->press('Login')
                    ->assertSee('You are logged in!');
        });
    }
}</code>
  1. php artisan dusk
Kegagalan ujian pengendalian:

Laravel Dusk - Intuitive and Easy Browser Testing for All!

Dusk meningkatkan debugging dengan menangkap tangkapan skrin apabila kegagalan ujian. Maklum balas visual ini mempercepat proses penyelesaian masalah.

tangkapan skrin disimpan dalam direktori

.

Laravel Dusk - Intuitive and Easy Browser Testing for All!

Menguji panggilan AJAX:

Dusk cemerlang dalam menguji interaksi Ajax. Kaedah

amat berguna untuk menunggu operasi tak segerak selesai. waitUntilMissing

Laravel Dusk - Intuitive and Easy Browser Testing for All! Contoh Menggunakan

:

waitUntilMissing

<code class="language-php">namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Laravel\Dusk\DuskServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    public function register()
    {
        if ($this->app->environment('local', 'testing')) {
            $this->app->register(DuskServiceProvider::class);
        }
    }
}</code>
Contoh lanjutan: modal ujian:

Kaedah Dusk membolehkan anda berinteraksi dengan unsur -unsur yang kelihatan secara dinamik, seperti modal.

whenAvailable

Menggunakan halaman senja untuk kebolehgunaan semula: Laravel Dusk - Intuitive and Easy Browser Testing for All!

halaman senja mempromosikan kebolehgunaan semula kod dengan merangkumi interaksi dan pernyataan halaman umum.

Kesimpulan:

Laravel Dusk menawarkan penyelesaian yang mantap dan cekap untuk ujian penyemak imbas akhir-ke-akhir aplikasi JavaScript-heavy Laravel. API intuitif, keupayaan debugging visual, dan sokongan untuk Ajax menjadikannya alat yang berharga untuk memastikan kualiti dan kebolehpercayaan aplikasi web anda. Contoh dan penjelasan yang disediakan harus memberikan asas yang kukuh untuk memasukkan senja ke dalam aliran kerja pembangunan anda. Ingatlah untuk berunding dengan dokumentasi Dusk Laravel rasmi untuk butiran lanjut dan ciri -ciri canggih.

(bahagian Soalan Lazim yang ditinggalkan untuk keringkasan, kerana ia adalah salinan langsung dari bahagian FAQ input asal.)

Laravel Dusk - Intuitive and Easy Browser Testing for All!

Atas ialah kandungan terperinci Laravel Dusk - Ujian penyemak imbas intuitif dan mudah untuk semua!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn