Playwright
Playwright, Microsoft tarafindan gelistirilen modern bir web test ve otomasyon cercevesidir. Chromium, Firefox ve WebKit tarayicilarini tek bir API ile otomatize eder; guvenilir ve hizli end-to-end (E2E) testler yazmanizi saglar. JavaScript, TypeScript, Python, Java ve C# dil destekle birlikte gelir. Windows, macOS ve Linux uzerinde calisir; Apache 2.0 lisansiyla ucretsiz ve acik kaynaklidir.
Temel Özellikler
- Chromium, Firefox ve WebKit coklu tarayici destegi
- JavaScript, TypeScript, Python, Java ve C# dil destegi
- Otomatik bekleme mekanizmasi, flaky test sorunu azalir
- Ag isteklerini yakalama ve taklit etme (mock)
- Zaman yolculugu (trace viewer) ile test yeniden oynatma
- Codegen ile tarayicida islem yaparak otomatik test kodu uretme
- CI/CD entegrasyonu ve paralel test yurutme
- Mobil cihaz emulasyonu ve ekran goruntusu karsilastirma
Playwright kurulumu ve ilk test nasil yazilir?
Playwright kurmak icin terminalde npm init playwright@latest komutunu calistirin; kurulum sihirbazi dil ve tarayici secimini yapmanizi saglar. Kurulum tamamlandiginda ornek test dosyalari olusturulur. Temel bir test icin bir .spec.ts dosyasi olusturun; test blogu icinde tarayici ac, sayfaya git ve dogrulama adimlarini tanimlayin. Testleri npx playwright test komutuyla calistirin; raporlar HTML formatinda otomatik uretilir. Playwright Codegen ile test yazmak daha kolay: npx playwright codegen hedef-url.com komutu tarayici acar ve yaptiginiz islemleri otomatik test koduna donusturur.
Playwright flaky testler nasil giderilir?
Flaky test sorunu en cok dinamik icerik, animasyon ve ag gecikmesi nedeniyle olusur. Playwright otomatik bekleme (auto-waiting) mekanizmasıyla bunu buyuk olcude azaltir; ancak bazi durumlarda ek onlemler gerekebilir. page.waitForSelector yerine expect ile locator kullanmak daha kararlı bekleme saglar. Ag isteklerini mock ederek disarıdan veri ceken sayfalardaki degiskenliği engelleyebilirsiniz. Sayfa animasyonlarini CSS ile devre disi bırakmak gorusel testlerde tutarlılığı artırır. Paralel test yurutme bazi paylasimli kaynaklar nedeniyle cakisma yaratabilir; izole test ortamlari kullanin.
Playwright alternatifleri
Web test otomasyon araçlarına alternatifler: Cypress, Robot Framework, k6.
- Chromium, Firefox ve WebKit tek API'den test edilir
- Çok dil desteği: JS, TS, Python, Java, C#
- Microsoft tarafından aktif geliştirilen güçlü proje
- Ağ mock ve intercept yetenekleri
- Görsel regresyon testleri
- Paralel test çalıştırma desteği
- npm/pip gerektirir, klasik kurulum yoktur
- Büyük binary boyutu (tarayıcılarla birlikte)
- Türkçe arayüz desteği yok
- Cypress'e göre daha yeni, topluluk daha küçük
Playwright Testing Tutorial for Beginners
İşletim Sistemi: Windows 10 64-bit veya üzeri
RAM: 4 GB (önerilen 8 GB)
Disk: 2 GB (tarayıcı binary'leri dahil)
Diğer: Node.js 18+ (JS/TS için) veya Python 3.8+ (Python için)