ブラウザテスト自動化のPuppeteerがFirefox正式サポート、新標準のWebDriver BiDi対応で。これでChromeとFirefoxに両方対応に

2024年8月9日

MozillaとGoogleは、ブラウザを用いたテスト自動化のためのフレームワーク「Puppeteer」がFirefoxを正式にサポートしたことを発表しました

Puppeteer」がFirefoxを正式にサポート

PuppeteerはGoogleが開発しており、Chrome DevTools Protocol(CDP)を通じてChromeをリモートコントロールすることでテスト自動化を実現しています。

CDPはWebSocketによる高速な双方向通信、コンソール上のメッセージを取得するなど低レイヤのAPIにも対応するなど、より柔軟かつ高度なテスト自動化を実現できます。

しかしCDPはChromium系のWebブラウザしか実装されていません。FirefoxはCDPのサブセットを実験的に実装してPuppeteerから操作可能ですが、あくまでも非公式なサポートにとどまっていました。

新しい標準のWebDriver BiDiをPuppeteerとFirefoxがサポート

一方で、テスト自動化のための標準として現在ほとんどのWebブラウザが実装している仕組みとして「WebDriver」があります。

しかしWebDriverは、Chrome DevTools Protocolが備えているような低レイヤのAPIを十分に備えておらず、またレンダリングが終了するタイミングが分からずテストスクリプト側でポーリングを行うなどテクニックが求められる場面がありました。

Chrome DevTools Protocolのような多くの優れた機能を備えつつ、WebDriverのように標準化されたクロスブラウザ対応のテスト自動化仕様として、現在W3Cで策定中なのが「WebDriver BiDi」です。

Puppeteerは今年(2024年)1月、WebDriver BiDiへの対応開始を発表。そしてFirefox 129とPuppeteerのリリース23でこのWebDriver BiDiの実装が出来上がったことで、PuppeteerによるFirefoxの正式サポートとなりました。ChromeもWebDriver BiDiをサポートしました。

参考:Puppeteer、テスト自動化の次世代標準「WebDriver BiDi」に対応開始。Firefoxもサポートへ

PuppeteerによるCDPのサポートは継続

Puppeteerは今後もCDPのサポートを継続し、Chromium系のブラウザとはデフォルトではCDPで通信を行い(明示的にWebDriver BiDiを指定することも可能)、それ以外のブラウザに対してはWeb標準のWebDriver BiDiを用いると説明されています。

あわせて読みたい

Web技術 Web標準 ソフトウェアテスト・品質 開発ツール Firefox Webブラウザ




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本