2026년 기준 Selenium, Cypress, Playwright 세 가지 테스트 자동화 프레임워크를 아키텍처, 안정성, 비용, 브라우저 지원, 언어 지원 측면에서 비교한다. 세 프레임워크는 브라우저 제어 방식에서 근본적으로 다르며, 각각의 강점이 다른 사용 시나리오에 최적화되어 있다.
핵심 포인트- Selenium은 W3C WebDriver/BiDi 프로토콜 기반 클라이언트-서버 아키텍처로 가장 광범위한 브라우저/언어 지원이 강점이다
- Cypress는 브라우저 내 JavaScript 샌드박스에서 직접 DOM에 접근, 빠른 피드백과 실시간 시간 여행 디버깅이 특징이다
- Playwright는 WebSocket/Chrome DevTools Protocol로 브라우저를 외부에서 제어, Chromium/Firefox/WebKit을 단일 API로 다룬다
- 병렬 실행: Playwright는 내장 무료 병렬화, Cypress는 유료 클라우드 필요, Selenium은 Grid 또는 서드파티 필요
- TCO 기준으로 가장 낮은 비용은 Playwright, 빠른 초기 설정은 Cypress, 레거시 커버리지는 Selenium이 유리하다
상세 정리- 아키텍처 차이: Selenium은 네트워크 경유 원격 제어라 중간 속도, Cypress는 같은 프로세스 내 직접 실행으로 빠름, Playwright는 DevTools Protocol 직접 접근으로 빠름
- 네트워크 모킹: Cypress는 cy.intercept() 내장, Playwright는 고급 요청 차단 내장, Selenium은 외부 라이브러리 필요
- 안정성 — Selenium: Modern WebDriver BiDi Protocol 통합으로 신뢰성 개선, 하지만 명시적 대기 설정이 flaky 테스트의 주요 원인
- 안정성 — Cypress: 자동 대기와 시간 여행 디버깅으로 DOM 상태를 각 단계에서 검사 가능, 높은 안정성
- 안정성 — Playwright: 요소의 표시/활성화/안정성/방해 없음 4가지 조건 자동 검증, Trace Viewer로 전체 실행 기록
- 브라우저 지원: Playwright가 Chromium+Firefox+WebKit 완전 지원, Cypress는 Chromium+Firefox+실험적 WebKit, Selenium이 레거시 포함 가장 광범위
- 모바일: Playwright는 뷰포트/터치/지리위치 에뮬레이션, Selenium+Appium만 iOS/Android 네이티브 앱 자동화 가능
- 언어 지원: Selenium이 Java/Python/C#/Ruby/JS 포함 가장 넓음, Playwright는 JS/TS/Python/Java/.NET, Cypress는 JS/TS만
- 비용 — Playwright: 병렬화 무료 내장, SaaS 구독 없이 CI 환경에서 테스트 확장 가능
- 비용 — Cypress: 오픈소스 러너는 단일 스레드, 지능형 병렬화는 유료 Cypress Cloud 전용
- 비용 — Selenium: Selenium Grid 또는 클라우드 제공업체로 인프라 설정/유지 비용 발생
- 선택 기준: 레거시/네이티브 모바일 → Selenium, 빠른 초기 설정/컴포넌트 테스트 → Cypress, 크로스 브라우저/고급 기능/낮은 TCO → Playwright
왜 읽나브라우저 커버리지, 언어, 예산, CI 확장성 요구에 따라 테스트 프레임워크를 선택하려는 QA/프론트엔드 엔지니어에게 실전 비교 기준과 선택 가이드를 제공한다.