テスト用ChromeまたはAxe Watcherを使用したChromium
システムインストール済みのブラウザに接続するプラットフォーム向けに、テスト用Chrome またはChromiumをインストールし、設定する方法
Axe Watcherがサポートするのは、 テスト用Google Chrome または Chromiumのみです。通常のChromeバージョン139以降はサポートされていません。
独自のブラウザインストールを管理するテストプラットフォーム(PlaywrightやPuppeteer)は影響を受けません。これらは互換性のあるChromiumを自動でダウンロードします。既にマシンにインストールされているブラウザに接続するプラットフォーム(WebdriverIO、WebDriverJS、Java Selenium)は、テスト用ChromeまたはChromiumをインストールし、そのパスを明示的に設定する必要があります。
テスト用ChromeまたはChromiumのインストール
次のいずれかのインストール方法を選択してください:
-
npmを使用:
@puppeteer/browsersはスタンドアロンのブラウザダウンロードツールです。プロジェクトにPuppeteerをインストールする必要はありません。テスト用Chromeをインストールするには、次を実行してください:npx @puppeteer/browsers install chrome@stable代わりにChromiumをインストールするには、次を実行してください:
npx @puppeteer/browsers install chromium@latestコマンドは出力の最後にインストールされたバイナリのパスを表示します。例:
chrome@stable /home/user/.cache/puppeteer/chrome/linux-136.0.7103.92/chrome-linux64/chromeそのパスを
CHROME_PATH環境変数に設定してからテストを実行してください。important@puppeteer/browsers installは、現在の作業ディレクトリのサブディレクトリにブラウザをダウンロードします。大容量のダウンロードが適切な場所からコマンドを実行し、結果のディレクトリをあなたの.gitignoreに追加することを検討してください。 -
GitHub Actionsを使用: ワークフローファイルに次のステップを追加してください。テスト用Chromeをインストールするには:
- name: Setup Chrome for Testing uses: browser-actions/setup-chrome@latest id: setup-chrome with: chrome-version: stable install-chromedriver: true代わりにChromiumをインストールするには、
latestを使用してくださいchrome-version:- name: Setup Chromium uses: browser-actions/setup-chrome@latest id: setup-chrome with: chrome-version: latest install-chromedriver: trueどちらの場合も、バイナリのパスはステップの出力から取得できます:
${{ steps.setup-chrome.outputs.chrome-path }}
プラットフォームの設定
が設定されたら、次のようにテストセットアップを構成します。 CHROME_PATH を行います。
WebdriverIO
WebdriverIOの機能に、 goog:chromeOptions 内にバイナリパスを渡してください。
スタンドアロンパッケージ( ): :wdioConfig()WDIO Testrunner(
const browser = await remote(
wdioConfig({
axe: {
apiKey: ACCESSIBILITY_API_KEY,
projectId: PROJECT_ID
},
capabilities: {
browserName: 'chrome',
'goog:chromeOptions': {
binary: process.env.CHROME_PATH
}
}
})
)) ): :wdioTestRunner()WebDriverJS
export const config = wdioTestRunner({
axe: {
apiKey: ACCESSIBILITY_API_KEY,
projectId: PROJECT_ID
}
}, {
capabilities: [{
browserName: 'chrome',
'goog:chromeOptions': {
binary: process.env.CHROME_PATH
}
}]
})最初に
を呼び出してChromeオプションオブジェクトを取得し、ブラウザをビルドする前にバイナリパスを設定します: webdriverConfig() Java Selenium
const chromeOptions = webdriverConfig({
axe: {
apiKey: ACCESSIBILITY_API_KEY,
projectId: PROJECT_ID
}
})
chromeOptions.setBinaryPath(process.env.CHROME_PATH)
const browser = await new Builder()
.forBrowser('chrome')
.setChromeOptions(chromeOptions)
.build()にバイナリパスを設定し、
を呼び出す前に: ChromeOptions を設定します。 watcher.configure():
AxeWatcherOptions options =
new AxeWatcherOptions()
.setApiKey(System.getenv("ACCESSIBILITY_API_KEY"))
.setProjectId(System.getenv("PROJECT_ID"));
AxeWatcher watcher = new AxeWatcher(options);
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.setBinary(System.getenv("CHROME_PATH"));
chromeOptions = watcher.configure(chromeOptions);
WebDriver wrappedDriver = watcher.wrapDriver(new ChromeDriver(chromeOptions));