최근 수정 시각 : 2026-06-24 16:21:58

Playwright


<nopad>
{{{#!wiki style="margin: 0 -10px -5px; min-height: calc(1.5em + 5px)"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin: -5px -1px -11px"
<colbgcolor=#2e3039,#2e3039><colcolor=#fff,#fff> 종류 대화형 인공지능 (주요 목록) · 코드 생성 인공지능 · 그림 인공지능 · 영상 인공지능 · 음악 인공지능 · 음성 인공지능 · 3D 모델링· 지능형 에이전트 · VLA · 멀티모달 모델 · 언어 모델 · 월드 모델
프롬프트 프롬프트 · 프롬프트 엔지니어링 · 프롬프트 해킹 · 에이전트 스킬 · 하네스 엔지니어링
아키텍처 트랜스포머 · GAN · 확산 모델 · 변분 오토인코더 · 자기회귀모델
학습 자기지도학습 · 강화학습 (RLHF)
응용 AI 개요 · 인공지능 검색 엔진 · 바이브 코딩 · 에이전틱 코딩(AGENTS.md · CLAUDE.md · MCP · Computer Use · Postman · Playwright) · 인공지능 로봇 (테슬라 옵티머스)
문화·밈 AI 커버 · 쇼거스 · 인공지능 버츄얼 유튜버 · ChatGPT 지브리풍 이미지 생성 유행 · 와... 너 정말, **핵심을 찔렀어.** · 세상에서 제일 하찮은 프롬프트
기타 AI 슬롭 · AI wrapper · 인공지능 환각 · 인공지능 검사기 · AI 중독 · 인공지능 벤치마크 · Model Context Protocol · 대중화 · 인공 일반 지능 · 인공지능 정렬 · Spiritual bliss attractor
}}}}}}}}} ||
{{{#!wiki style="margin:-10px -10px"<tablebordercolor=#356fa5> 파일:파이썬_화이트.svgPython
패키지 목록
}}}
{{{#!wiki style="margin: 0 -10px -5px; min-height: 28px;"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin: -6px -1px -11px; word-break: keep-all;"
<colbgcolor=#356fa5><colcolor=#fff> 수학 NumPy
데이터 가공 Pandas, Polars, PySparkPandas on Spark 포함
데이터 시각화 matplotlib, Plotly
웹 프레임워크
동기
Django, Flask
비동기
FastAPI
머신 러닝·딥 러닝 TensorFlow · Keras, PyTorch, JAX · Flax
프론트엔드·GUI PyQt, wxPython, PyGTK
게임 Pygame, Ren'Py
기타 SQLAlchemyDB, OpenCV컴퓨터 비전, RequestsHTTP, OpenZL데이터 압축, PlaywrightCUA
}}}}}}}}} ||
Playwright
파일:Playwright 로고 (2026).svg파일:Playwright 로고 (2026, 다크 테마).svg
<colbgcolor=#45BA4B><colcolor=#FFF> 개발사 <colbgcolor=transparent> Microsoft
공개일 2020년 1월 31일
버전 1.60.0
개발 언어 TypeScript, JavaScript
기반 런타임 Node.js
지원 언어 TypeScript, JavaScript, Python, Java, C#
라이선스 Apache License 2.0
1. 개요2. 역사3. 특징
3.1. 크로스 브라우저 지원3.2. Auto-wait3.3. 네트워크 인터셉션3.4. 병렬 테스트 및 샤딩3.5. 내장 디버깅 도구3.6. 멀티 컨텍스트 및 멀티 탭
4. 지원 브라우저5. 언어 바인딩6. 테스트 러너7. Playwright MCP
7.1. 동작 방식7.2. Playwright CLI
8. Playwright Test Agents9. 타 도구와의 비교10. 여담

1. 개요

Microsoft가 개발한 오픈소스 브라우저 자동화 라이브러리이자 엔드-투-엔드(E2E) 테스팅 프레임워크. #

2. 역사

<rowcolor=#FFF> 일자 주요 사항
2020년 1월 최초 공개 (JS/TS 지원)
2020년 9월 Python 언어 바인딩 추가
2021년 Java, .NET(C#) 바인딩 추가 및 전용 테스트 러너 @playwright/test 출시
2025년 3월 공식 Playwright MCP 서버 출시 — AI 에이전트의 브라우저 직접 조작 지원
2025년 11월 (v1.56) Playwright Test Agents(Planner / Generator / Healer) 내장
2025년 11월 (v1.57) 기본 다운로드 브라우저를 자체 빌드 Chromium에서 Chrome for Testing으로 교체
2026년 1월 (v1.58) AI 코딩 에이전트 전용 Playwright CLI 추가
2026년 4월 (v1.59) Screencast API, `browser.bind()`, CLI 트레이스 디버거 추가
2026년 5월 (v1.60) `locator.drop()`, `tracing.startHar()`, ARIA 바운딩 박스, `test.abort()` 추가
2020년 1월 31일 Microsoft에 의해 첫 공개되었다. Google Chrome 팀에서 Puppeteer를 개발하던 주요 엔지니어 일부(Pavel Feldman, Andrey Lushnikov 등)가 Microsoft로 이직하여 Playwright 개발에 참여한 것으로 알려져 있다.[1] Puppeteer의 한계였던 단일 브라우저(Chromium) 의존성과 JavaScript/Node.js 전용 문제를 처음부터 해소하는 것이 주요 설계 목표였다.

3. 특징

Chromium, Firefox, WebKit 세 가지 브라우저 엔진을 단일 API로 제어하며, TypeScript/JavaScript, Python, Java, C# 다섯 가지 언어 바인딩을 공식 지원한다. 헤드리스(headless) 및 헤드풀(headful) 모드를 모두 지원하며, 웹 스크래핑·자동화·회귀 테스팅 등 폭넓은 용도에 사용된다.

원래 브라우저 자동화 및 E2E 테스팅을 주목적으로 설계되었으나, 2025년 3월 공식 Playwright MCP 서버가 출시되면서 대형 언어 모델(LLM) 기반 AI 에이전트가 멀티모달 인식을 통해 프론트엔드 디자인을 검토하고 실제 브라우저를 통해 직접 작업하는 Computer Use 워크플로우에도 사실상 표준 도구로 자리잡고 있다.

3.1. 크로스 브라우저 지원

Chromium 계열(Google Chrome, Microsoft Edge), Firefox, WebKit(Apple Safari 엔진)을 단일 API로 지원한다. 동일한 테스트 코드를 세 엔진 전체에서 실행할 수 있어 크로스 브라우저 호환성 검증에 유리하다. v1.57부터는 기본 내장 브라우저가 자체 빌드 Chromium에서 Chrome for Testing으로 교체되었다. 단, Playwright에 번들된 Firefox 및 WebKit 빌드는 Playwright 팀이 자체 패치를 적용한 빌드로, 순정 브라우저와 완전히 동일하지는 않다. 한편, WebKit 엔진 기반 테스트는 macOS가 아닌 Linux/Windows 환경에서도 실행 가능하다.

3.2. Auto-wait

Playwright의 핵심 설계 원칙 중 하나. 요소(element)와 상호작용하기 전에 해당 요소가 조작 가능한 상태(visible, stable, enabled, editable 등)인지를 자동으로 확인하고 대기한다. 별도의 `sleep()`이나 `wait()` 코드를 삽입하지 않아도 대부분의 타이밍 문제를 자동으로 처리해, 기존 자동화 도구에서 빈번하게 발생하던 불안정한(flaky) 테스트 문제를 크게 줄인다.

3.3. 네트워크 인터셉션

HTTP 요청 및 응답을 가로채거나 수정하는 기능을 기본 내장한다. 특정 URL의 요청을 모킹(mocking)하거나 응답 값을 임의로 조작해 다양한 네트워크 시나리오를 테스트할 수 있다.

3.4. 병렬 테스트 및 샤딩

@playwright/test에 병렬 실행 기능이 기본 내장되어 있으며, 별도 플러그인 없이 무료로 사용 가능하다. 대규모 테스트 스위트를 여러 CI 머신에 나눠 실행하는 샤딩(sharding) 기능도 지원한다.

3.5. 내장 디버깅 도구

  • Trace Viewer: 테스트 실행 과정을 단계별로 재현하며 네트워크 요청, DOM 스냅샷, 스크린샷 등을 시각화하는 GUI 도구. v1.59부터 CLI(`npx playwright trace`)를 통한 터미널 분석도 지원.
  • UI Mode: 테스트를 실시간으로 실행·관찰하며 디버깅할 수 있는 대화형 인터페이스.
  • 테스트 실패 시 자동 스크린샷/비디오 캡처.
  • `npx playwright codegen [URL]` — 브라우저 조작을 자동으로 코드로 변환해 주는 코드 생성(Codegen) 기능. TS/JS, Python, Java, C# 중 원하는 언어로 출력 가능.
위와 같은 디버깅 도구가 기본 포함된다.

3.6. 멀티 컨텍스트 및 멀티 탭

단일 테스트 내에서 여러 브라우저 탭이나 창, 독립적인 브라우저 컨텍스트(쿠키·세션이 격리된 환경)를 동시에 다룰 수 있다. OAuth 인증 플로우 검증, 멀티 탭 시나리오 등을 테스트하는 데 활용된다.

4. 지원 브라우저

<rowcolor=#FFF> 브라우저 엔진 대응 브라우저
<rowcolor=#FFF> 비고
Chromium
Chrome for Testing
Google Chrome
Microsoft Edge 등
v1.57부터 Chrome for Testing 기반. Stable·Beta·Dev·Canary 채널 지원
Firefox Mozilla Firefox
Playwright 자체 패치 적용 빌드
WebKit Apple Safari (엔진 공유)
Linux/Windows에서도 WebKit 테스트 가능

5. 언어 바인딩

<rowcolor=#FFF> 언어 패키지 / 설치 명령
JavaScript
TypeScript
`npm install @playwright/test`
Python `pip install playwright` (Python 3.9 이상)
Java Maven / Gradle 의존성으로 추가
C# (.NET) `dotnet add package Microsoft.Playwright`

6. 테스트 러너

  • 브라우저·환경별 테스트 설정 분리 (projects 기능)
  • 병렬/샤딩 실행
  • 시각적 회귀 테스트(스냅샷 테스팅)
  • 자동 재시도(retries)
  • HTML 리포터

Playwright API를 기반으로 개발된 전용 테스트 러너가 있다. Jest와 유사한 assertion 문법(`expect`)을 제공하며, 위의 기능을 기본 제공한다. `playwright.config.ts`(또는 `.js`) 설정 파일을 통해 timeout, retry 횟수, headless 여부 등을 프로젝트 단위로 관리한다.

7. Playwright MCP

2025년 3월, Microsoft가 공식 출시한 MCP (Model Context Protocol) 서버. Claude Desktop, Cursor, VS Code 등 MCP를 지원하는 AI 에이전트·IDE가 Playwright 브라우저를 직접 제어할 수 있게 한다. `npx @playwright/mcp@latest` 명령으로 즉시 실행 가능하다.

7.1. 동작 방식

  • Snapshot Mode (기본): 페이지의 접근성 트리(accessibility tree)를 구조화된 스냅샷으로 AI에 전달. 이미지 처리 없이 DOM을 텍스트로 이해하므로 토큰 효율이 높고 속도가 빠르다.
  • Vision Mode: 스크린샷 이미지를 AI에 전달. 시각적 판단이 필요한 경우에 사용하나, 비전 능력이 있는 멀티모달 LLM이 필요하다.
위의 두 가지 모드를 지원한다.

7.2. Playwright CLI

v1.58(2026년 1월 30일)부터 AI 코딩 에이전트 전용 Playwright CLI가 추가되었다. MCP가 접근성 스냅샷을 매 턴(turn)마다 인라인으로 스트리밍하는 것과 달리, CLI는 스냅샷을 디스크의 YAML 파일로 저장한 뒤 경로만 반환하는 구조로 MCP 대비 약 4배 적은 토큰을 사용한다. 이에 따라 Microsoft 공식 권고 역시 "코딩 에이전트에는 MCP보다 CLI 사용을 권장"으로 변경되었다.

8. Playwright Test Agents

  • Planner: 대상 애플리케이션을 탐색하여 마크다운 형식의 테스트 계획을 생성.
  • Generator: 테스트 계획을 실행 가능한 Playwright 테스트 파일로 변환. 코드 작성 중 실시간으로 셀렉터(selector)를 검증.
  • Healer: 실패한 테스트 스위트를 실행하고 셀렉터 관련 실패를 자동 수정. Microsoft 발표 기준 셀렉터 오류의 약 75%를 자동 수정.
v1.56(2025년 11월)에 내장된 AI 기반 테스트 자동화 파이프라인. 세 역할의 에이전트로 구성된다.

9. 타 도구와의 비교

<rowcolor=#FFF> 항목 Playwright Puppeteer Cypress Selenium
최초 출시 2020 2017 2014 2004
개발사 Microsoft Google Cypress.io 커뮤니티
크로스 브라우저 Chrome·Firefox·WebKit Chrome/Chromium 위주 Chrome·Firefox (WebKit 미지원) 광범위
공식 지원 언어 TS/JS, Python, Java, C# JS/TS JS/TS Java, Python, C#, JS, Ruby 등
Auto-wait ○ 기본 내장 △ 제한적 ○ 기본 내장 ✕ 수동 구성
병렬 테스트 ○ 무료 내장 △ 별도 구성 필요 △ 유료 또는 서드파티 ○ (Selenium Grid)
실행 속도[2] ~4.5초 (최속) ~4.8초 ~9.4초 (최저속) ~4.6초
멀티 탭·팝업 △ 제한적
AI 에이전트 연동 ○ (MCP / CLI)
  • Selenium은 가장 오래된 도구로 넓은 언어 지원과 성숙한 생태계를 보유하지만, 외부 WebDriver를 통한 브라우저 제어 구조상 설정이 상대적으로 복잡하다.
  • Puppeteer는 Chromium/Chrome 특화로 가볍고 빠르지만, 멀티 브라우저 지원이 제한적이고 Node.js 전용이다.
  • Cypress는 개발자 경험(DX)이 우수하고 디버깅이 편리하나, WebKit 미지원 및 병렬 실행 시 비용 발생 등의 단점이 있다.
  • Playwright는 세 도구의 주요 단점을 보완하는 방향으로 설계되었으며, 특히 2025~2026년 AI 에이전트 연동 측면에서 사실상 유일한 선택지로 부상했다.

10. 여담

  • "Playwright"는 연극 대본을 쓰는 "극작가"를 뜻하는 단어다. 브라우저 조작 시나리오를 연극 대본처럼 작성한다는 의미를 담은 것으로 해석된다.
  • Puppeteer 개발진이 Microsoft로 이적하여 Playwright를 만들었다는 사실은 브라우저 자동화 생태계에서 널리 알려져 있다. 이 때문에 초기 Playwright API는 Puppeteer와 유사한 부분이 많았으나, 크로스 브라우저 지원과 다중 언어 바인딩을 처음부터 설계 목표로 삼은 점에서 차별화되었다.
  • 2025년 기준 GitHub 스타 75,000개 이상, npm 주간 다운로드 400만 건 이상을 기록하며 브라우저 자동화 프레임워크 중 가장 빠른 성장세를 보이고 있다.[3]
  • 2025년 가장 임팩트 있는 MCP 서버로 Playwright MCP가 꼽히며, ChatGPT, Claude 등의 생성형 AI 서비스 뿐만 아니라 Claude Code, Codex, Cursor, GitHub Copilot 등 다수의 AI 코딩 에이전트에서 브라우저 조작의 사실상 표준 도구로 사용되고 있다.
  • langchain 및 langgraph 생태계에서도 사용이 가능하다. OpenAI 모델의 경우에는 langgraph-cua 라이브러리가 필요하고 구글 모델의 경우에는 langchain-google-genai 라이브러리를 통해 playwright 패키지와 연동할 수 있다. CUA를 지원하는 모델을 써야 한다.

[1] GitHub 초기 커밋 및 PyPI 관리자 목록(pavelfeldman, yurys)에서 확인 가능.[2] Checkly의 1,000회 실행 벤치마크 기준 평균 실행 시간. 테스트 환경에 따라 다를 수 있다.[3] Wikipedia, "Playwright (software)", 2025 데이터 기준.