Python library to integrate axe and selenium for web accessibility testing.
Project description
axe-selenium-python integrates aXe and selenium to enable automated web accessibility testing.
Requirements
You will need the following prerequisites in order to use axe-selenium-python:
- Python 2.7 or 3.6
- pytest-selenium >= 3.0.0
Installation
To install axe-selenium-python:
$ pip install axe-selenium-python
To install pytest-axe:
$ pip install pytest-axe
Usage
To run tests using pytest-selenium (a dependency of axe-selenium-python), tests must be marked with the non-destructive pytest decorator:
@pytest.mark.nondestructive def test_my_test_function(): assert true
Test suites using axe-selenium-python must import pytest and the Axe class.
pytest-selenium relies on the base_url fixture, which can be set in a configuration file, or as a command line argument.
Configuration File
[pytest] base_url = http://www.example.com
Command Line Argument
$ pytest --base-url http://www.example.com
Example Test Function
test_accessibility.py
import pytest from axe_selenium_python import Axe import pytest_axe @pytest.mark.nondestructive def test_accessibility(self, axe): response = axe.execute() assert len(response['violations']) == 0, axe.report()
Tests not using the axe pytest fixture must use the selenium pytest fixture:
test_accessibility.py
import pytest from axe_selenium_python import Axe @pytest.mark.nondestructive def test_accessibility(self, selenium): axe = Axe(selenium) response = axe.execute() assert len(response['violations']) == 0, axe.report()
Resources
CHANGELOG
version 0.0.276
- Added pytest-axe usage example to README
version 0.0.275
- Added usage example to README
version 0.0.273
- Added selenium instance as a class attribute
- Changed file paths to OS independent structure
- Fixed file read operations to use with keyword
version 0.0.21
- Fixed include of aXe API file and references to it
- Updated README
Project details
Release history Release notifications
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size & hash SHA256 hash help | File type | Python version | Upload date |
---|---|---|---|
axe_selenium_python-0.0.287-py2.py3-none-any.whl (67.0 kB) Copy SHA256 hash SHA256 | Wheel | py2.py3 | |
axe-selenium-python-0.0.287.tar.gz (63.9 kB) Copy SHA256 hash SHA256 | Source | None |