axe-devtools-behave APIリファレンス

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

BehaveベースのPythonテストのためのaxe-devtools-behaveパッケージのAPIリファレンス

Not for use with personal data

このパッケージは、Axe DevToolsをBehave(キュウカンバーのようなPythonテストフレームワーク)に統合します。

使用方法

axe-devtools-behaveを使用する前に、いくつかの設定を行う必要があります。

まず最初に、features/environment.pyを使ってブラウザの開閉を設定する必要があります。

# features/environment.py

import behave_webdriver

def before_all(context):
    context.behave_driver = behave_webdriver.Chrome()

def after_all(context):
    # cleanup after tests run
    context.behave_driver.quit()

次に、axe-devtools-behaveをfeatures/steps/axe.pyでインポートする必要があります。

# features/steps/axe.py

from axe_devtools_behave import *

これで、axe-devtools-behaveをフィーチャーファイルで使用できます。

axe-devtools-behaveパッケージはbehave-webdriverを利用していますので、そのライブラリからのすべてのステップがインポートされ、使用可能です。

アクセシビリティキュウカンバーステップ

以下の例のアクセシビリティチェックではThen the page should be axe cleanを使用していますが、すべてのチェックはThen the page should be audited for accessibilityとも互換性があります。

違いは、should be axe cleanがaxeを実行し、違反があるとテストが失敗するのに対し、should be audited for accessibilityはaxeを実行し、結果をaxe-reportsディレクトリに保存することです。should be audited for accessibilityは決して失敗しません。

axeアクセシビリティキュウカンバーステップを構築するには、基本ステップから始め、必要な句を追加します。以下のすべての句は混合して使用できますが、指定された順序でなければなりません。

Then the page should be axe clean [including] [excluding] [according-to] [checking-rules/checking-only-rules] [skipping-rules]

基本ステップ

    Then the page should be axe clean

基本ステップはキュウカンバーステップのコアコンポーネントです。それ自体で完全なステップであり、現在読み込まれているページがaxe.a11yCheckのデフォルト設定を利用してアクセシブルであることを確認します(ドキュメント全体のチェックはデフォルトルールを使用します)。

包含句

    Then the page should be axe clean within "#selector"

包含句(within "#selector")はページ上のどの要素をチェックするかを指定します。包含句には有効なCSSセレクタを二重引用符で囲んで含める必要があります。複数の要素を選択するには複合セレクタを使用します。例:within "#header, .footer"

note

詳細についてはコンテキストパラメータを参照してください。

除外句

    Then the page should be axe clean excluding "#selector"

除外句(excluding "#selector")は無視するドキュメント要素を指定します。有効なCSSセレクタを二重引用符で囲んで指定します。複数の要素を選択するには複合セレクタを使用します。例:excluding "#widget, .ad"

note

詳細についてはコンテキストパラメータを参照してください。

除外句を含む場合は、包含句からの区切りとしてセミコロン(;)またはbutという単語を使用します。

    Then the page should be axe clean within "main"; excluding "aside"
    Then the page should be axe clean within "main" but excluding "aside"

アクセシビリティスタンダード(タグ)句

    Then the page should be axe clean according to: tag-name

タグ句は、ページチェックで使用するアクセシビリティスタンダード(または標準)を指定します。アクセシビリティ標準を名前(タグ)で指定します。複数の標準をコンマで区切って指定できます。例:according to: wcag2a, section508

それぞれのタグに対応するルールの説明の完全なリストに加えて、許容されるタグ名は文書化されています

タグ句を直前の句から区切るためにセミコロン(;)を使用できます。

    Then the page should be axe clean within "#header"; according to: best-practice

チェックルール句

    Then the page should be axe clean checking: ruleId

チェックルール句は、(指定されたタグやデフォルトのルールセットに加えて)実行する追加のルールを指定します。ルールはカンマで区切られたルールIDで指定されます。

有効なルールIDのリストについてはルールの説明を参照してください。

チェックルール句を直前の句から区切るためにセミコロン(;)またはandという単語を使用します。

    Then the page should be axe clean according to: wcag2a; checking: color-contrast
    Then the page should be axe clean according to: wcag2a and checking: color-contrast

専用ルール句

    Then the page should be axe clean checking only: ruleId

この句は別ではありません。チェックルール句にonlyという単語を追加することで、ステップの意味を変更できます。先に述べたように、チェックルール句はデフォルトで追加ルールを実行することを指定します。onlyという単語が使用されると、指定されたルールのみがチェックされます。

スキップルール句

    Then the page should be axe clean skipping: ruleId

スキップルール句はスキップするルールを指定します。特定のルールを無視しながら、使用するアクセシビリティスタンダードを(タグ句を介して)指定します。ルールはカンマで区切られたルールIDで指定されます。

有効なルールIDのリストについてはルールの説明を参照してください

スキップルール句を直前の句から区切るためにセミコロン(;)またはbutという単語を使用します。

Then the page should be axe clean according to: wcag2a; skipping: accesskeys
Then the page should be axe clean according to: wcag2a but skipping: accesskeys

タグ付きルールセット

タグ付きルールセットにはキュウカンバー句を通じてアクセスします。この機能を使用すると、開発者はページのアクセシビリティを監査するためのルールセット(例:508、wcag2、wcag2.1)を指定できます。

以下のコードは、特定のルールセットを分析中に評価するために必要なキュウカンバージェルキン構文を示しています:

Scenario: Test Page with options
  When I visit "http://abcdcomputech.dequecloud.com/"
  Then the page should be audited for accessibility within "title" according to ruleset: wcag2.1