アクセシビリティ・テスト

GitLab 12.8で導入されました

アプリケーションがウェブインターフェースを提供し、GitLab CI/CDを使用している場合、保留中のコード変更のアクセシビリティへの影響を素早く判断することができます。

概要

GitLabは、Webサイトのアクセシビリティを測定するためのフリーでオープンソースのツールであるpa11yを使用しており、シンプルなCIジョブテンプレートを構築しています。 このジョブは、分析された各ページのアクセシビリティ違反、警告、通知をaccessibilityというファイルに出力します。

アクセシビリティマージリクエストウィジェット

  • GitLab 13.0で導入された無効化機能フラグ :accessibility_report_viewの背後にあります。
  • GitLab 13.1で機能フラグが削除されました。

作成されるレポートアーティファクトに加えて、GitLabはマージリクエストウィジェットエリアにもアクセシビリティレポートを表示します:

Accessibility Merge Request Widget

アクセシビリティ・テストの設定

この例では、GitLabAccessibility Dockerイメージを使って、GitLab CI/CDでコード上でpa11yを実行する方法を示します。

GitLab 12.9以降では、a11y ジョブを定義するには、以下のようにGitLabインストールに含まれるAccessibility.gitlab-ci.yml テンプレート含める必要があります。

.gitlab-ci.yml ファイルに以下を追加してください:

stages:
  - accessibility

variables:
  a11y_urls: "https://about.gitlab.com https://gitlab.com/users/sign_in"

include:
  - template: "Verify/Accessibility.gitlab-ci.yml"

CI/CDパイプラインにa11y ジョブを作成し、a11y_urlsで定義されたウェブページに対してPa11yを実行し、それぞれのHTMLレポートを作成します。

各URLのレポートは、ブラウザで直接閲覧できるアーティファクトとして保存されます。

単一のgl-accessibility.json アーティファクトが作成され、個々の HTML レポートとともに保存されます。 これには、スキャンされたすべての URL のレポート データが含まれます。

Note:GitLab 12.10以前のバージョンでは、生成されるアーティファクトの名前はaccessibility.json
注意:GitLabのバージョンが12.9より前の場合は、include:remote現在のテンプレートへのリンクをmaster
注:テンプレートが提供するジョブ定義はまだKubernetesをサポートしていません。

CIコンフィギュレーションでPa11yにコンフィギュレーションを渡すことはまだできません。 何かを変更するには、テンプレートをCIファイルにコピーして、必要な編集を行ってください。