CLIによるページのテスト
Axe DevTools for Web CLIを使用した個別のウェブページのテストオプション
CLIのURI入力モードを使用する際、テストの範囲とルールセットを変更するためのいくつかの追加オプションがあります。例えば、次のコードはテストからヘッダーとフッターを除外し、色のコントラストルールを無効にします。
axe http://example.com --exclude footer,header --disable color-contrastオプション
-a, --axe-source <path>
代替の axe.js ファイルへのパス。ほとんどのユーザーはこのオプションを必要としません。これは、特定または修正されたバージョンのaxe-coreに対してテストするなどの高度な使用ケース向けに意図されています。
--axe-devhub-api-key <your-API-key>
アクセシビリティ結果をAxe Developer Hubに送信するために使用するAxeアカウントAPIキーを指定します。結果は、テスト完了後に指定されたプロジェクトID( --axe-devhub-project-id コマンドラインオプションで指定)に関連付けられたプロジェクトに送信されます。 --axe-devhub-api-key と --axe-devhub-project-id の両方がAxe Developer Hubに結果を送信するために必要です。 CLIを使用してアクセシビリティ結果をAxe Developer Hubに送信する の詳細を参照してください。
--axe-devhub-project-id <your-project-ID>
アクセシビリティテスト結果を受け取るAxe Developer HubプロジェクトIDを指定します。 --axe-devhub-api-key と --axe-devhub-project-id の両方がAxe Developer Hubに結果を送信するために必要です。 CLIを使用してアクセシビリティ結果をAxe Developer Hubに送信する の詳細を参照してください。
--axe-devhub-server-url <url>
Axe Developer HubサーバーのURLを指定します。デフォルトは https://axe.deque.comです。 AXE_DEVHUB_SERVER_URL 環境変数と等価です。 CLIを使用してアクセシビリティ結果をAxe Developer Hubに送信する の詳細を参照してください。
-c, --custom <path>
使用するカスタムルールセットを指定します。 カスタムルールセット ファイルの生成についての詳細を参照してください。
--chrome-options [options]
ブラウザに渡すChromeコマンドラインスイッチのカンマ区切りリスト。例えば:
axe http://example.com --chrome-options="some-switch,some-other-switch"--chrome-path <path>
Chromeブラウザ実行ファイルへの絶対パス。デフォルトのブラウザが見つからない場合や特定のバージョンで実行する必要がある場合に axe を特定のChromeインストールにポイントするために使用します。
--chromedriver-path <path>
ChromeDriver実行ファイルへの絶対パス。ChromeDriverは、Chromeブラウザ自体とは別のバイナリであり、 axeのWebDriverコマンドをChromeが実行できる命令に変換するブリッジとして機能します。
-d, --dir <path>
JSON結果ファイルが保存されるディレクトリ。このフラグ(または --save 、 --report)なしでは、ファイルは書き込まれず、結果は人間が読みやすい要約としてターミナルに出力されます。また、 -j, --stdout にディスクに書き込まずに機械可読な出力が必要な場合を参照してください。
-l, --disable <list>
無効にするルールIDのカンマ区切りリスト。 axe-coreルールの説明 のすべてのルールIDのリストを参照してください。
axe http://example.com --disable color-contrast,duplicate-id-e, --exclude <list>
テストから除外する要素のCSSセレクタのカンマ区切りリスト。例えば:
# Exclude by element type
axe http://example.com --exclude footer,header
# Exclude by class or ID
axe http://example.com --exclude ".ad-banner,#cookie-notice"
# Exclude by attribute
axe http://example.com --exclude "[aria-hidden=true]"-f, --format <value>
生成されたレポートの形式を指定します。必要な -r, --reportです。 レポートの作成とフィルタリング 形式に含まれる内容の詳細を参照してください。デフォルト: htmlです。
| 値 | 出力 |
|---|---|
html |
HTMLレポート |
junit |
JUnit XMLレポート |
csv |
CSVスプレッドシート |
universal |
Axeユニバーサルフォーマット JSONファイル |
html+junit+csv |
すべてのフォーマットを一度に |
axe http://example.com --report ./reports --format html+junit+csv--filter <list>
CSV出力に含める結果タイプのカンマ区切りリスト。指定されたタイプのみが表示され、それ以外は除外されます。有効な値は passes、 violations、 incomplete、および inapplicableです。必要条件は --format csvです。
axe reporter ./axe-reports/json/ --format=csv --filter passes,inapplicable-i, --include <list>
CSSセレクタのカンマ区切りリスト。指定した場合、 axe は のみ 一致する要素をテストし、ページ上のその他の要素は無視されます。これは非常に制限的であり、ほとんどのユーザーは代わりに -e, --exclude を使用するべきです。 --include は、特定のコンポーネントにテストを限定したい場合、例えば集中的なデバッグやコンポーネントレベルのCIチェック中に使用してください。
# Test only the main navigation
axe http://example.com --include nav
# Test only elements with a specific class or ID
axe http://example.com --include ".my-widget,#signup-form"
# Test only elements with a specific attribute
axe http://example.com --include "[data-testid=checkout]"-j, --stdout
機械が読み取れるJSONとして全結果を標準出力に書き出し、人が読み取れるターミナル要約を表示しません。これを使用して、他のプログラムへ結果をパイプで送る際に利用してください。
--load-delay <n>
ページがロードされた後、監査を実行するまでの待機時間(ミリ秒単位)を設定します(デフォルト:0)。 axe が待機します。
--no-git-data
結果をAxe Developer Hubに送信する際にGitブランチおよびコミット情報を報告しません。参照: CLIを使用してアクセシビリティ結果をAxe Developer Hubに送信する。
--no-reporter
違反要約出力(ルールID、数、影響を受けたセレクタおよびヘルプURL)を抑制しますが、すべてを静音化するわけではありません。プログレスメッセージと --save、 --dir、または --report によってディスクに保存された結果は影響を受けません。主にCIパイプラインで、ファイルに結果を保存し、 --exit をパス/フェイルの信号として使用し、ビルドログに煩雑な違反詳細を表示したくない場合に役立ちます。JSONの結果出力で完全に静音化するには、代わりに -j, --stdout を使用してください。
-q, --exit
失敗コードで終了します。 1 何らかのアクセシビリティテストが失敗した場合。
-r, --report <output-dir>
フォーマットされたレポートが書き込まれるディレクトリ。 -f, --format と連携して出力フォーマットを制御します(デフォルトはHTML)。生のJSONではなく、人が読み取れるまたは機械で解析可能なレポートが必要な場合に使用してください。たとえば、ステークホルダーと共有するためのHTMLレポートやCI統合用のJUnit XMLファイルです。生のJSON出力には、代わりに -d, --dir を使用してください。
--rules <list>
実行するルールIDのカンマ区切りリスト。指定されたルールのみがチェックされ、その他はスキップされます。 axe-coreルールの説明 を参照して、すべてのルールIDの完全なリストをご覧ください。
axe http://example.com --rules color-contrast,duplicate-id-s, --save [filename]
現在のディレクトリにJSONファイルとして結果を保存します。ファイル名はオプションで、省略した場合、 axe-result.jsonという名前のファイルになります。代わりに特定のディレクトリに保存するには、 -d, --dirを使用してください。
--show-errors
がランタイムエラーに遭遇した場合(たとえば、初期化の失敗や実行中の例外スロー)、通常簡単なエラーメッセージをstderrに出力します。このフラグはその出力に完全なスタックトレースを追加します。アクセシビリティ違反の報告方法には影響しません。デバッグに axe ファイル、CIでの予期しない失敗の診断、バグレポートのための情報収集時に使用してください。 --axe-source を使用してください。
-t, --tags <list>
実行するルールをフィルタリングするためのタグのカンマ区切りリスト。指定されたタグの少なくとも1つに一致するルールのみが含まれます。 axe-coreタグのドキュメント を参照して、利用可能なタグの完全なリストをご覧ください。
axe http://example.com --tags wcag2a,wcag2aa--timer
各テスト実行後に端末に次の3つのタイミング測定値を表示します:
- Axeページのロード時間:ブラウザでページが読み込まれるまでの時間
- axe-coreの実行時間:axe-coreがページを解析するのにかかった時間
- 総テスト時間:実行全体の経過時間
を診断して遅いテストを特定するために使用します。たとえば、このオプションを使用して、ページのロード待機に時間がかかっているのか、Axeの解析に時間がかかっているのかを確認したり、なぜテストが --page-timeout または --script-timeout 制限。
--universal-best-practices
記録(レコード) bestPracticesEnabled=true ユニバーサルフォーマット出力のメタデータに含まれています。要求: --format universal。
--universal-ruleset <id>
ユニバーサルフォーマット出力のメタデータに記録するルールセットIDを指定します。デフォルト: wcag2.1。要求: --format universal。
| ルールセットID | 標準 |
|---|---|
wcag2 |
WCAG 2.0 AA |
wcag2.1 |
WCAG 2.1 AA(デフォルト) |
wcag2.2 |
WCAG 2.2 AA |
wcag2aaa |
WCAG 2.0 AAA |
wcag2.1aaa |
WCAG 2.1 AAA |
wcag2.2aaa |
WCAG 2.2 AAA |
508 |
セクション 508 |
en301549 |
EN 301 549 |
ttv5 |
Trusted Tester v5 |
rgaav4 |
RGAA v4 |
この 508 ルールセットは、ユニバーサルフォーマットにはセクション508の標準値が独立して存在しないため、出力に standard: "WCAG 2.1 AA" 記録しています。
-v, --verbose
違反が見つかった場合は、違反の概要の後にJSONブロックを出力し、次の情報を含みます:
- テストエンジン:使用されているaxe-coreのバージョン
- テスト環境:ブラウザのユーザーエージェント、ビューポートの幅と高さ、画面の向き
- テストランナー:ランナーの名前
この出力は、違反がある場合にのみ表示されます。ページに違反がない場合、メタデータは印刷されません。どのaxe-coreのバージョンが実行されたかを確認したり、ビューポートの設定を確認したり、環境の詳細をバグ報告に含めたい場合に使用します。
構成オプション
以下のオプションは、ブラウザの動作とテストのタイミングを制御します。上記のオプションとは異なり、これらはCLIの実行間で保持され、一度設定すると、すべての将来の実行に使用される設定ファイルに値が保存されます。また、 axe config-seleniumを使用して対話的に設定することもできます。
| オプション | 説明 |
|---|---|
--accept-untrusted |
信頼できないSSL証明書を受け入れる。 |
--browser [browser-name] |
実行するブラウザ。選択したブラウザのためのSelenium WebDriverバインディングが必要です。 |
--headless |
ヘッドレスモード(ウィンドウ表示なし)でブラウザを起動。 |
--page-timeout [ms] |
ページの読み込みを待つ最大時間。デフォルト: 60000。 |
--post-analyze-pause [ms] |
ページ分析の開始と次のアクションへの移行の間のポーズ。デフォルト: 2000。 |
--post-get-pause [ms] |
ページの読み込みとスキャンの開始の間のポーズ。デフォルト: 2000。 |
--post-script-pause [ms] |
スクリプティングアクションとスキャンの開始の間のポーズ。デフォルト: 2000。 |
--remote-server [server-url] |
BrowserStackやSauce LabsなどのリモートWebDriverサーバーを使用。 |
--script-timeout [ms] |
スペックファイルスクリプトを実行するために許可された最大時間。デフォルト: 60000。 |
--window-size <width,height> |
ビューポートサイズをピクセル単位で設定します。例: --window-size=1280,800。ヘッドレスモードでも適用されます。 |
詳細については、 設定オプションを参照してください。
