Apa itu Playwright?
Playwright adalah kerangka kerja sumber terbuka untuk pengujian end-to-end yang andal untuk aplikasi web modern. Ini relatif baru (dirilis pada tahun 2020), tetapi mempertahankan jadwal rilis aktif, menambahkan fitur baru dan memperbaiki bug dengan cepat. 2022 StateOfJS tren pengujian menunjukkan bahwa Playwright terus berkembang dalam popularitas dan retensi dalam komunitas pengembangan web.
Mengapa menggunakan Playwright?
Ada banyak alasan untuk memilih Playwright sebagai kerangka kerja otomatisasi pengujian Anda. Berikut adalah empat kunci:
API Terpadu: Playwright berfungsi di semua mesin browser modern (Chromium, WebKit, Firefox) dan mendukung emulasi perangkat untuk cakupan seluler. Ini mencakup opsi browser "headed" (dengan antarmuka) dan "headless" (tanpa antarmuka), memungkinkan pengembang untuk memprioritaskan antara kenyamanan debugging dan pelaksanaan CI (Continuous Integration)/Cloud.
Pengujian Tangguh: Playwright mengimplementasikan "auto-wait" (tidak ada batas waktu buatan) dan "auto-retry" (pernyataan web), menghilangkan penyebab utama untuk tes yang cacat. Opsi alat yang kaya (pelacakan, perjalanan waktu) mempermudah proses debug dan memperbaiki masalah jika kesalahan terjadi.
Isolasi Pengujian: Setiap pengujian berjalan di BrowserContext sendiri, terlepas dari pengujian lain yang berjalan pada saat yang sama. Pengujian dijalankan secara paralel (untuk pengoptimalan) dan satu kegagalan pengujian tidak memengaruhi yang lain (untuk keandalan).
Alat canggih: Playwright menyederhanakan pengalaman pengembang dari penulisan pengujian hingga eksekusi, penelusuran kesalahan, pelaporan, dan pembuatan profil, dengan opsi untuk menggunakan CLI atau ekstensi Visual Studio Code.
Konsep inti Playwright
Dalam latihan berikut, kita akan mempelajari cara melakukan tugas otomatisasi pengujian menggunakan Playwright. Untuk mengatur panggung, berikut adalah beberapa istilah dan konsep inti yang perlu diingat. Tujuan dan penggunaannya menjadi lebih jelas ketika Anda mengerjakan latihan.
Konsep | Deskripsi |
---|---|
TestConfig | Mengonfigurasi Playwright Test Runner menggunakan File (statis) atau API (dinamis) |
TestProject | Grup pengujian logis yang menjalankan TestConfig yang sama dan dapat didefinisikan menggunakan filter. |
Batas Waktu Pengujian | Global (per eksekusi pengujian), Default (per pengujian), Mengharapkan batas waktu, Batas waktu tetap |
Perlengkapan | Inti untuk isolasi uji Playwright. Atur lingkungan; lihat opsi bawaan . |
Navigasi | Menggunakan page.goto() opsi untuk membuat alur kerja pengujian multi-halaman |
Pencari Lokasi | Inti dari fitur auto-wait dan auto-retry di Playwright. Aksi menemukan elemen target. |
Pernyataan | Validasi Core to Playwright dari hasil yang diharapkan berdasarkan tindakan. |
Anotasi | Tes tag untuk memberikan konteks lebih dalam menangani kegagalan, fokus, ketidakstabilan. |
menggunakan Opsi | Konfigurasikan Browser (proyek) atau BrowserContext (konteks) di dalam cakupan. |
Model Objek Halaman | Mewakili komponen UI dengan "Objek" dan mengaitkan logika pengujian untuk digunakan kembali |
Perangkat inti Playwright
Kita juga akan mempelajari cara menggunakan beberapa alat Playwright, baik dari baris perintah maupun dari dalam Visual Studio Code. Sebagai referensi, berikut adalah beberapa alat pengembang utama yang akan kita jelajahi, dengan deskripsi peran yang mereka mainkan dalam alur kerja pengujian.
Alat | Deskripsi |
---|---|
Uji Playwright | Playwright Test Runner dan CLI bawaan. |
Ekstensi Playwright | Ekstensi Playwright untuk Visual Studio Code. |
Codegen | Playwright Test Generator (untuk penulisan otomatis). |
Mode UI | Pengalaman Perjalanan Waktu Playwright (dengan Mode Tonton). |
Penampil Jejak | Antarmuka pengguna grafis untuk menjelajahi jejak Playwright yang direkam. |
Debugger Visual Studio Code | Dukungan kuat untuk debugging menggunakan Ekstensi Visual Studio Code. |
Inspektur Penulis Skenario | Dukungan debugging yang kuat dari baris Perintah Playwright. |
Reporter Bawaan | Opsi pelaporan fleksibel, dengan dukungan untuk penyesuaian. |
Integrasi Berkelanjutan | Dukungan untuk berbagai penyedia CI (dengan konfigurasi sampel). |
Dalam banyak kasus, fungsionalitas yang sama tersedia dari CLI dan Ekstensi Visual Studio Code. Kami akan menjelajahi opsi Playwright Test (CLI) secara singkat, tetapi sebaiknya jadikan ekstensi Visual Studio Code sebagai opsi pilihan Anda karena kemampuan yang lebih kaya dan pengalaman pengembang yang lebih efisien.