playwright-e2e-testing은(는) 무엇을 하나요?
Playwright를 사용한 최신 엔드투엔드 테스트 프레임워크로, 교차 브라우저 자동화, 자동 대기, 내장 테스트 러너를 제공합니다.
Playwright는 Chromium, Firefox, WebKit을 포함한 모든 최신 브라우저를 단일 API로 자동화할 수 있는 강력한 도구입니다. 이 스킬은 Playwright를 활용하여 안정적이고 빠른 엔드투엔드 테스트를 작성하고 실행하는 방법을 안내합니다.
주요 기능
- 교차 브라우저 자동화: Chromium, Firefox, WebKit 등 다양한 브라우저에서 동일한 테스트 실행 가능
- 자동 대기: 요소가 준비될 때까지 자동으로 기다려 불안정한 테스트 감소
- 내장 테스트 러너: 별도의 테스트 러너 설치 없이 실행 및 결과 확인 가능
- 모바일 에뮬레이션: 다양한 모바일 기기 환경 테스트 지원
- 네트워크 제어: 요청 가로채기, 모킹 등 네트워크 수준 제어
설치 및 설정
npm init playwright@latest
이 명령어는 테스트 디렉토리, 기본 설정 파일, 예제 테스트를 생성합니다.
기본 테스트 예제
const { test, expect } = require('@playwright/test');
test('홈 페이지 제목 확인', async ({ page }) => {
await page.goto('https://example.com');
await expect(page).toHaveTitle(/Example Domain/);
});
브라우저 컨텍스트 및 페이지
Playwright는 브라우저 컨텍스트를 통해 격리된 세션을 생성합니다. 각 테스트는 독립적인 컨텍스트를 가집니다.
test('로그인 후 대시보드 접근', async ({ browser }) => {
const context = await browser.newContext();
const page = await context.newPage();
await page.goto('https://example.com/login');
await page.fill('#username', 'user');
await page.fill('#password', 'pass');
await page.click('button[type="submit"]');
await expect(page).toHaveURL(/.*dashboard/);
});
내장 러너 실행
npx playwright test