Learning Hub
Kiểm thử & QA

Bắt đầu thực hành với Playwright

5 phút đọc·Cập nhật 2026-09-07

Bắt đầu thực hành với Microsoft Playwright cho một nhóm nhỏ hành trình test browser quan trọng, dễ bảo trì.

Bắt đầu thực hành với Playwright

Microsoft Playwright là một framework miễn phí, giấy phép Apache-2.0, dùng để test và automation web. Nó hỗ trợ Chromium, Firefox và WebKit, đi kèm test runner, assertion, isolation, chạy song song, trace và báo cáo HTML.

Tải hoặc tạo project

Khuyến nghị: khởi tạo project test của riêng bạn

Cài một bản Node.js được hỗ trợ, mở terminal tại thư mục muốn đặt project, rồi chạy:

npm init playwright@latest

Chọn TypeScript hoặc JavaScript, chấp nhận thư mục tests, và bật GitHub Actions workflow nếu cần. Trình khởi tạo sẽ cài Playwright Test cùng browser binary và tạo sẵn một ví dụ chạy được ngay.

Đọc hoặc tải mã nguồn framework

git clone https://github.com/microsoft/playwright.git

Repository trên GitHub là mã nguồn của framework, không phải bộ test mẫu cho ứng dụng của bạn. Dùng trình khởi tạo ở trên cho project mới; chỉ tải hoặc clone repository khi bạn muốn xem hoặc đóng góp cho chính Playwright.

Test đầu tiên

Tạo file tests/homepage.spec.ts:

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

test('homepage exposes its primary heading', async ({ page }) => {
  await page.goto(process.env.BASE_URL ?? 'http://localhost:3000');

  await expect(page.getByRole('heading', { level: 1 })).toBeVisible();
  await expect(page).toHaveTitle(/.+/);
});

Ưu tiên các locator hướng người dùng như role và label. Tránh delay cố định theo thời gian; assertion của Playwright tự động chờ đến khi điều kiện UI mong muốn xảy ra.

Chạy và kiểm tra

# Chạy bộ test trên các browser đã cấu hình
npx playwright test

# Chạy tương tác với debug từng bước
npx playwright test --ui

# Mở báo cáo HTML gần nhất
npx playwright show-report

Vị trí của Playwright trong bức tranh chung

flowchart LR
    A[Unit và component test] --> B[API và contract test]
    B --> C[Bộ Playwright nhỏ cho case critical]
    C --> D[Smoke khi deploy]
    D --> E[Monitoring production]
    C -. không nhằm chứng minh mọi business rule .-> A

Dùng Playwright cho một nhóm nhỏ hành trình browser quan trọng, khả năng tương thích trình duyệt, tương tác hướng accessibility, hành vi session và smoke khi triển khai. Giữ các phép tính chi tiết và logic boundary ở tầng unit/API.

Biến ví dụ thành một project dễ bảo trì

  1. Đặt URL môi trường và cấu hình an toàn trong Playwright config; nạp secret từ kho secret đã duyệt, không bao giờ để trong source control.
  2. Tạo domain workflow tái sử dụng như createEmployee hay approveLeave; không để mọi test tự thao tác trực tiếp trên selector của trang.
  3. Sinh dữ liệu riêng biệt cho mỗi lần chạy và mỗi tenant, chỉ dọn dẹp record thuộc về lần chạy đó.
  4. Chỉ chụp screenshot và trace chủ yếu khi test fail.
  5. Gắn tag rủi ro như @critical, @payroll, hoặc @tenant-isolation để CI chọn bằng chứng theo từng gate.
  6. Chạy bộ smoke nhanh khi deploy và bộ rộng hơn hằng đêm hoặc trước khi release.
  7. Theo dõi flaky test với owner và deadline; không bao giờ quarantine vô thời hạn một test critical.

Tài nguyên miễn phí gợi ý tiếp theo

Các công cụ này bao phủ những rủi ro khác nhau. Playwright không thay thế công việc test API, contract, bảo mật, hiệu năng, đối soát dữ liệu hay đánh giá AI.

Ghi chú nguồn

Vai trò của việc test UI E2E chọn lọc và kiến trúc automation được lấy từ tài liệu chiến lược PDF đính kèm. Link repository, câu lệnh, giấy phép và khả năng hiện tại của sản phẩm đã được kiểm tra lại với nguồn chính thức vào ngày 2026-09-06.

Quay lại trang chính