Skip to main content

๐ŸŽญ Apa Itu Playwright?

Tentu! Berikut penjelasan singkat tapi jelas mengenai Playwright dan fungsinya:


๐ŸŽญ Apa Itu Playwright?

Playwright adalah framework open-source dari Microsoft untuk automated end-to-end (E2E) testing aplikasi web.

Mirip seperti Selenium atau Cypress, tapi lebih modern, cepat, dan fleksibel. Playwright memungkinkan kamu untuk menulis skrip otomatis yang mensimulasikan bagaimana pengguna sebenarnya berinteraksi dengan aplikasi web (klik, isi form, scroll, dll.).


๐Ÿ”ง Fitur Utama Playwright:

Fitur Penjelasan
Multi-browser Bisa otomatisasi di Chromium (Chrome, Edge), Firefox, dan WebKit (Safari).
Headless/Headful Bisa dijalankan tanpa tampilan GUI (headless) atau dengan GUI (headful). Cocok untuk CI/CD.
Cross-platform Bisa dijalankan di Windows, macOS, dan Linux.
Parallel execution Mendukung jalankan banyak test secara paralel (cepat).
Auto-waiting Menunggu elemen muncul secara otomatis, jadi tidak perlu sleep() manual.
Powerful selector engine Bisa pakai selector berbasis text, role (A11y), XPath, CSS, dll.
Built-in test runner Playwright sudah punya test runner sendiri (@playwright/test) yang powerful dan mudah digunakan.

๐Ÿ” Contoh Use Case Playwright:

  • Menguji UI aplikasi web (misalnya: klik tombol login, isi form, submit, cek hasil).

  • Regression test (cek fitur tidak rusak setelah update).

  • Smoke test di pipeline CI/CD sebelum deploy ke production.

  • Cross-browser testing (pastikan web tampil benar di semua browser).

  • Testing SPA (Single Page Application) seperti React, Vue, Angular.


๐Ÿงช Contoh Test Playwright:

import { test, expect } from '@playwright/test';

test('test login page', async ({ page }) => {
  await page.goto('https://example.com/login');
  await page.fill('#username', 'widi');
  await page.fill('#password', 'rahasia');
  await page.click('button[type="submit"]');
  await expect(page).toHaveURL('https://example.com/dashboard');
});

๐Ÿง  Singkatnya:

Playwright = Robot yang bisa pakai browser, klik-klik halaman web, isi form, dan cek apakah aplikasi kamu bekerja dengan benar.

Dan karena bisa dijalankan otomatis di Jenkins, GitLab CI, GitHub Actions, Azure DevOps, dll, maka sangat cocok dipakai di pipeline CI/CD modern.


Kalau kamu tertarik, saya bisa bantu kamu setup Playwright dari awal sampai masuk ke Jenkins pipeline. Mau mulai dari mana?