Skip to content
Latchkey

Playwright vs Selenium: モダン vs 定番のE2E

Playwrightは自動待機を備えたモダンで高速なブラウザ自動化ツール。Seleniumは長年定着したWebDriver標準で、最も幅広い言語とブラウザに対応します。

Playwright(Microsoft)はChromium、Firefox、WebKitを自動待機、トレース、並列実行を標準搭載で制御し、高速でflakyになりにくいモダンなAPIを提供します。Seleniumはベテランの実績あるWebDriverベース標準で、ほぼすべての言語とブラウザに対応し、巨大なエコシステムと分散実行用のgridを備えています。

PlaywrightSelenium
自動待機標準搭載手動 / 明示的な待機
ブラウザChromium, Firefox, WebKit主要すべて (WebDriver)
言語JS/TS, Python, Java, .NET非常に幅広い
速度 / flakiness高速、flakyが少ない遅め、チューニングが多い
最適な用途モダンで信頼性の高いE2E幅広い互換性、既存スイート

CIでは

Playwrightは強力なモダンのデフォルトです - 自動待機がflakinessを削減し、標準搭載の並列実行とトレースがデバッグを高速化し、セットアップもシンプルです。Seleniumは膨大な言語とブラウザ対応、実績あるツール、分散実行用のSelenium Gridにより依然として価値があり、特に既にスイートがある場合やニッチなブラウザ対応が必要な場合に有効です。新規プロジェクトは通常、信頼性と速度からPlaywrightを好みます。

高速化する

ブラウザバイナリをcacheし、specをjob間でshardして並列化します。ブラウザとテストはCI runner上で実行されます。高速なmanaged runnerは重いE2E実行を短縮します。

結論

高速でflakyの少ないモダンなE2Eを求める新規プロジェクト: Playwright。最も幅広い言語/ブラウザ対応が必要、または既存のWebDriverスイートがある: Selenium。今日、多くのグリーンフィールドチームはPlaywrightを選びます。

関連ガイド