Python axe-devtools-api を使用した基本例
Python で axe-devtools-api と axe-devtools-selenium を使用する最小限のコード例
Not for use with personal data
以下は、axe-devtools-api と axe-devtools-selenium を使用してページをテストする最小限の例です。
前提条件
- Python 3
- Selenium ウェブドライババインディング(例: chromedriver や geckodriver)
- Agora または バンドル を介して axe-devtools-api と axe-devtools-selenium をインストールしてください
コード
これは意図的にアクセシビリティ違反を含むページを Chrome ウィンドウで開き、axe を実行し、その結果を整形して出力します。
from pprint import pprint
from selenium import webdriver
from axe_devtools_selenium import AxeDriver
from axe_devtools_api import Axe
page = webdriver.Chrome()
page.get("https://dequeuniversity.com/demo/mars/")
axe = Axe(AxeDriver(page))
results = axe.analyze()
pprint(results.__dict__)こちらは同様ですが、結果を出力する代わりにアクセシビリティ違反があれば例外を投げます。
from pprint import pprint
from selenium import webdriver
from axe_devtools_selenium import AxeDriver
from axe_devtools_api import Axe
page = webdriver.Chrome()
page.get("https://dequeuniversity.com/demo/mars/")
axe = Axe(AxeDriver(page))
results = axe.analyze()
assert results.is_axe_clean(), results.violations_report()スキャン前にページに対して何か行いたい場合は、selenium ドキュメント または API ドキュメント を参照してください。
Firefox を使用したい場合は、webdriver.Chrome() を webdriver.Firefox() に変更してください。
