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:

FiturPenjelasan
Multi-browserBisa otomatisasi di Chromium (Chrome, Edge), Firefox, dan WebKit (Safari).
Headless/HeadfulBisa dijalankan tanpa tampilan GUI (headless) atau dengan GUI (headful). Cocok untuk CI/CD.
Cross-platformBisa dijalankan di Windows, macOS, dan Linux.
Parallel executionMendukung jalankan banyak test secara paralel (cepat).
Auto-waitingMenunggu elemen muncul secara otomatis, jadi tidak perlu sleep() manual.
Powerful selector engineBisa pakai selector berbasis text, role (A11y), XPath, CSS, dll.
Built-in test runnerPlaywright 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?