インストール

モジュールをインストールします

  1. npm install @wordpress/jest-puppeteer-axe --save-dev

注意: このパッケージは長期サポートステータスのNode.jsバージョンを必要とします(アクティブLTSまたはメンテナンスLTSリリースを確認)。古いバージョンとは互換性がありません。

セットアップ

最も簡単なセットアップは、JestのsetupFilesAfterEnv設定オプションを使用することです:

  1. "jest": {
  2. "setupFilesAfterEnv": [
  3. "@wordpress/jest-puppeteer-axe"
  4. ]
  5. },

使用法

Jestテストスイートに次のコードをテストの本体に追加します:

  1. test( 'checks the test page with Axe', async () => {
  2. // First, run some code which loads the content of the page.
  3. loadTestPage();
  4. await expect( page ).toPassAxeTests();
  5. } );

オプションのパラメータを渡すことも可能で、Axe APIがカスタマイズされたチェックを実行できるようになります:

  • include – 分析に含める要素のリストを追加するCSSセレクター。
  • exclude – 分析から除外する要素のリストを追加するCSSセレクター。
  • disabledRules – 検証からスキップするAxeルールのリスト。
  • options – Axeの実行方法を構成する柔軟な方法。オブジェクト構造に関する情報はaxe-core APIドキュメントを参照してください。
  • config – Axe設定オブジェクト。オブジェクト構造に関するドキュメントはaxe-core APIドキュメントを参照してください。
  1. test( 'checks the test component with Axe excluding some button', async () => {
  2. // First, run some code which loads the content of the page.
  3. loadPageWithTestComponent();
  4. await expect( page ).toPassAxeTests( {
  5. include: '.test-component',
  6. exclude: '.some-button',
  7. disabledRules: [ 'aria-allowed-role' ],
  8. options: { iframes: false },
  9. config: { reporter: 'raw' },
  10. } );
  11. } );

このパッケージへの貢献

これはGutenbergプロジェクトの一部である個別のパッケージです。このプロジェクトはモノレポとして整理されています。特定の目的を持つ複数の自己完結型ソフトウェアパッケージで構成されています。このモノレポ内のパッケージはnpmに公開され、WordPressや他のソフトウェアプロジェクトで使用されています。

このパッケージやGutenberg全体への貢献について詳しく知りたい場合は、プロジェクトの主要な貢献者ガイドをお読みください。