Automate Web Accessibility Testing using AXE/HTMLCS with Playwright Python
Project description
Accessibility Automation for Web Apps with Python and Playwright.
This project uses HTML CodeSniffer and Deque Axe
HTML CodeSniffer : checks HTML source code and detects any Accessibility violations. Comes with standards that cover the three (A, AA & AAA) conformance levels of the W3C's Web Content Accessibility Guidelines (WCAG) 2.1 and the U.S. Section 508 legislation.
Deque Axe : World’s leading digital accessibility toolkit. Powerful and accurate accessibility toolkit can get you to 80% issue coverage, or more, during development.
Features
- Simple & Easy to use
- No need of prior knowledge on Accessibility
- Works with Python Playwright
- Rich Reporting
- Open source
Installation
For maven based project add the below dependency
pip install python-a11y-playwright
Getting Started
Using HTML CodeSniffer
Below is the example usage using HTML CodeSniffer.
from pathlib import Path
from automateda11y.pw.settings import Settings
from playwright.sync_api import sync_playwright
from automateda11y.pw.htmlcsrunner import HtmlCsRunner
def json_reports_dir():
return Path(__file__).parent.parent.__str__()
with sync_playwright() as p:
Settings.report_dir = json_reports_dir() + '/reports'
browser = p.chromium.launch(headless=False)
page = browser.new_page()
page.goto("http://playwright.dev")
data = HtmlCsRunner(page).execute()
browser.close()
Using Deque Axe
Below is the example usage using Deque Axe.
from pathlib import Path
from automateda11y.pw.settings import Settings
from playwright.sync_api import sync_playwright
from automateda11y.pw.axerunner import AxeRunner
def json_reports_dir():
return Path(__file__).parent.parent.__str__()
with sync_playwright() as p:
Settings.report_dir = json_reports_dir() + '/reports'
browser = p.chromium.launch(headless=False)
page = browser.new_page()
page.goto("http://playwright.dev")
data = AxeRunner(page).execute()
browser.close()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file python-a11y-playwright-1.0.1.tar.gz.
File metadata
- Download URL: python-a11y-playwright-1.0.1.tar.gz
- Upload date:
- Size: 9.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ac0a6e87db1626f06fb31532d20462ada73b2a7e3cf191f837f00319f1474be8
|
|
| MD5 |
1ecf14d61f4c864c6cd048eb404817c2
|
|
| BLAKE2b-256 |
5f6546f79be7d70eb22525c015cf8662ed697a053fef6bb7d2cc0bd9428dd09c
|
File details
Details for the file python_a11y_playwright-1.0.1-py3-none-any.whl.
File metadata
- Download URL: python_a11y_playwright-1.0.1-py3-none-any.whl
- Upload date:
- Size: 15.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f564d12201cdf33766ca3b16ac5469c97f38dd4af10f2aa6b574bc739871899d
|
|
| MD5 |
6236933e46132e6f752fdf740a0b23a5
|
|
| BLAKE2b-256 |
d6a5bc4b98e874d6425e1e5c07153c22357b6f5d3fd61e30dee575013f45aa13
|