RGAAルールセットを使用してAxe DevToolsとWeb APIを利用する
RGAAルールセットの仕組み、WCAGとの関連性、およびAxe DevToolsとWeb API、CLIからの選択方法について。
RGAAは、Axe DevToolsとWeb APIおよびCLIでテスト可能なアクセシビリティ標準の一つであり、ルールセットIDで識別されますrgaav4。このページでは、RGAAルールセットが何であるか、結果を読む際のWCAGルールセットとの関連性、および各言語バインディングやCLIでの選択方法について説明します。利用可能なすべての標準の概要については、ルールセットをご覧ください。一般的なルールセットやaxe-coreバージョンの変更については、ルールのカスタマイズを参照してください。
RGAAとは何か?
RGAA、つまりRéférentiel Général d'Amélioration de l'Accessibilitéは、フランス政府のウェブアクセシビリティ標準です。主にWCAG 2.1に基づいており、ウェブコンテンツのアクセシビリティを評価するための具体的な技術基準を提供します。現在サポートされているバージョンはRGAA 4です。また、定義は用語集で見つかります。
RGAAは、フランスで活動する公的機関や一部の大規模な民間組織を含む、フランスのウェブアクセシビリティ義務を満たさなければならない組織に主に関連しています。それは、フランス政府によって公開・維持されており、公式RGAAサイトで入手できます。
RGAAとWCAGの関係
RGAA 4は、WCAGとは別の、または厳しい技術要件のセットではありません。それは、WCAG 2.1レベルAおよびAAの成功基準を106のテスト可能な管理基準に転用し、それぞれに詳細なテスト手順が設定されています。基礎的な技術基準は実質的にWCAG 2.1 AAであり、RGAAは具体的なフランスの監査方法論、フランス語の言い回し、および法的コンプライアンス体制を追加しています。
自動化された結果を読む人にとって、RGAAルールセットとWCAGルールセットの違いは、ほとんどがラベリングと範囲の問題であり、何がチェックされるかではありません。Axe-coreは、WCAGベースの既存ルールにRGAAタグを追加することでRGAAを実装しており、独立したエンジンを実行するわけではありません。rgaav4ルールセットを選択すると、RGAA基準に対応するWCAG由来のルールが実行され、さらにWCAGがベストプラクティスとして扱うがRGAAが要求する少数のルール、例えばregion、skip-link、table-duplicate-name、および実験的なfocus-order-semanticsが含まれます。
RGAAは、WCAGがベストプラクティスや実験的と分類するいくつかのルールを要求するため、RGAAスキャンはデフォルトのWCAG 2.1 AA実行では見られない結果を浮かび上がらせます。rgaav4ルールセットがデフォルトのwcag2.1ルールセットでは見られない課題を報告することを期待してください。
自動化されたRGAAスキャンを通過することは、完全なRGAA適合と同じではありません。自動テストはRGAA基準の機械でテスト可能な部分集合をカバーするだけであり、完全な適合には、手動テスト、公式の監査方法論、アクセシビリティ宣言、および自動化ツールの範囲外の計算された適合率がさらに必要です。
axe-coreバージョン
RGAAサポートはアクセシビリティテストエンジンへの最近の追加であるため、ルールセットはaxe-coreバージョンが十分に新しい場合にのみ利用可能です。コンポーネント、開発者、チーム全体でaxe-coreバージョンを一貫して保つことにより、スキャン結果は一貫性が保たれます。axe-coreバージョンを選択する方法についてはルールのカスタマイズをご覧ください。
RGAA 4は、axe-coreバージョン4.11.0およびそれ以降でのみサポートされています。
RGAAルールセットの選択
デフォルトでは、Axe DevToolsはWCAG 2.1 AA標準に従ってテストを行います。RGAAを選択するには他のルールセットと同様に、ルールセットIDrgaav4を渡します。各言語バインディングは独自のルールセット選択メソッドを公開しています。サポートされている言語とフレームワークの完全なリストについては、Axe DevToolsとWeb APIについてをご覧ください。
API
- Python(Python概要):ルールセットを
with_ruleset("rgaav4")で選択します。Python APIリファレンスを参照するか、Robot Frameworkの場合はRobot Frameworkリファレンスを参照してください。 - Java(Java概要):ルールセットを
forRuleset("rgaav4")で選択します。Java Selenium APIリファレンスとJava Seleniumテストガイドを参照してください。Java HamcrestテストガイドにはforRulesetメソッドがなく、タグとしてRGAAをaccordingTo("RGAAv4")で選択します。 - C#(C#概要):ルールセットを
WithRuleset("rgaav4")で選択します。C# APIリファレンスを参照してください。また、RGAAv4をタグベースの選択のTagType値として公開しています。 - Node.jsとJavaScript(Node.jsとJavaScriptの概要):メカニズムはフレームワークによって異なります。ルールセットIDを
AxeDevTools.init("rgaav4")に渡すか、ブラウザJavaScriptリファレンスで使用し、Cypress APIドキュメントではcy.setAxeRuleset("rgaav4")を使用します。また、WebdriverIOリファレンスでrulesetID: "rgaav4"のコンストラクタオプションを設定します。 - Ruby(Ruby入門):RGAAはRubyパッケージでサポートされており、RSpecとCucumberで文書化されている標準的な
according_to_rulesetメカニズムを通じて選択されます。これらのページの例はWCAGとセクション508ルールセットに焦点を当てており、rgaav4を明示的に列挙していないことに注意してください。
これらのメソッドのほとんどは、ベストプラクティスルールを有効にするためのオプションの引数も受け入れます。正確な名前は言語によって異なるため、それぞれのリンクされたリファレンスを確認してください。
CLI
CLIではRGAAを扱う方法が2つあります。まず、axe ruleset --rgaav4を使用して標準のRGAA v4構成ファイルを生成し、--customフラグを使用してスキャンを行うときに適用します。カスタムルールセットおよびCLIリファレンスを参照してください。
axe ruleset --rgaav4 # generates rgaav4.json
axe <url> --custom rgaav4.json次に、--format universalから出力されるメタデータにルールセットを記録するには、--universal-ruleset rgaav4を渡します(CLIリファレンスおよびページテストを参照)、またはワークフロースペックでrulesetのanalyzeアクションのパラメーターをrgaav4に設定します。
結果とタグでのRGAA
RGAAルールセットを実行すると、結果には全体ルールセットのタグRGAAv4が、各基準ごとのタグRGAA-x.x.x(例えばRGAA-3.2.1)とともに付加されます。これらのタグは、各結果の対応するWCAGやその他の標準タグの横に表示されます。例えば、color-contrastの発見には、次のようなタグが含まれる場合があります。
cat.color, wcag2aa, wcag143, TTv5, TT13.c, EN-301-549, EN-9.1.4.3, ACT, RGAAv4, RGAA-3.2.12つの識別子の違いに注意してください: APIおよびCLIに渡すルールセットIDは小文字の文字列rgaav4で、結果に表示されるタグ文字列は大文字のRGAAv4です。axe-coreはRGAAの基準のうち機械的にテスト可能なサブセットのみをカバーしているため、結果にRGAAタグが含まれることは、自動チェックが実行されたことを示しており、完全なRGAA適合を示すものではありません。
