44 poin oleh xguru 2022-11-14 | 4 komentar | Bagikan ke WhatsApp
  • Otomatisasi/pengujian web pada praktiknya dulu merupakan ranah standar Selenium
    • Mudah untuk mulai digunakan, dan mendukung hampir semua bahasa pemrograman
    • Cukup memadai, tetapi ya hanya sampai di situ
    • Tidak bekerja dengan baik di situs dengan framework JavaScript modern (Angular, React, ..)
      → Bukan berarti tidak bisa berjalan sama sekali. Hanya saja hasilnya kurang bagus
    • Katanya dokumentasinya bagus, tetapi saat benar-benar mencoba melakukan hal yang sedikit keluar dari alur utama, sulit menemukan contohnya
  • Saya sempat ingin mencoba hal seperti Chai, Mocha, dan Cypress, tetapi pengaturannya benar-benar berbeda, dan bagi developer Python itu tidak mudah
  • Puluhan pengganti Selenium pernah dibuat, tetapi kebanyakan menghilang dalam beberapa tahun

Enter Playwright

  • Sangat bagus, dan yang lebih penting dibuat oleh Microsoft. Kemungkinan akan didukung dalam jangka panjang
  • Fitur pembunuh Playwright adalah "pembuatan tes otomatis"
    • Buka browser dan jalankan langkah demi langkah, lalu itu akan direkam dan dibuatkan menjadi skrip Python
    • Mengurangi kerepotan mencari hal seperti XPath di Selenium
    • Langkah-langkah yang disimpan seperti ini hampir bisa langsung dijalankan tanpa modifikasi
  • Kelebihan lainnya adalah proses eksekusi bisa disimpan sebagai video untuk ditonton
  • Satu-satunya kekurangan adalah karena ini masih baru. Bug masih banyak dan dokumentasinya belum bagus
  • Tetapi kalau dilihat secara keseluruhan, untuk semua proyek baru saya kemungkinan akan memilih Playwright

4 komentar

 
yangeok 2022-11-21

Sebagai orang yang pernah memakai puppeteer lalu berhasil sepenuhnya beralih ke playwright saat onboarding, saya rasa hanya dengan fitur codegen milik playwright saja sudah cukup bernilai untuk pindah.

 
joone 2022-11-15

Dari sudut pandang orang yang sudah lama hanya memakai Puppeteer dan hanya menggunakan node. Beralih ke Playwright rasanya memang tidak mudah begitu saja.

 
kunggom 2022-11-15

Daripada langsung memikirkan memindahkan proyek yang sudah ada, bagaimana kalau saat memulai proyek baru kita secara aktif mempertimbangkan untuk mengadopsi Playwright? Atau, sepertinya memulai proyek mainan juga akan bagus.

 
kbumsik 2022-11-14

Menurut saya API Playwright lintas bahasa (JS, Python) konsisten dan terasa lebih rapi.
Khususnya untuk Python, dukungan async-nya juga sangat bagus, hehe