{"id":15210715,"url":"https://github.com/axe-selenium-python/axe-selenium-python","last_synced_at":"2025-07-30T13:03:22.744Z","repository":{"id":21818455,"uuid":"94129364","full_name":"axe-selenium-python/axe-selenium-python","owner":"axe-selenium-python","description":"aXe Selenium Integration python package","archived":false,"fork":false,"pushed_at":"2025-01-09T12:41:29.000Z","size":915,"stargazers_count":59,"open_issues_count":16,"forks_count":52,"subscribers_count":16,"default_branch":"main","last_synced_at":"2025-01-09T13:50:30.242Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/axe-selenium-python/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/axe-selenium-python.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-06-12T18:46:51.000Z","updated_at":"2025-01-09T12:41:33.000Z","dependencies_parsed_at":"2024-08-01T21:43:21.611Z","dependency_job_id":"0a176be0-fe10-4f10-ba09-bc1baa284064","html_url":"https://github.com/axe-selenium-python/axe-selenium-python","commit_stats":{"total_commits":98,"total_committers":14,"mean_commits":7.0,"dds":0.653061224489796,"last_synced_commit":"3cfbdd67c9b40ab03f37b3ba2521f77c2071827b"},"previous_names":["mozilla-services/axe-selenium-python"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axe-selenium-python%2Faxe-selenium-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axe-selenium-python%2Faxe-selenium-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axe-selenium-python%2Faxe-selenium-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axe-selenium-python%2Faxe-selenium-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/axe-selenium-python","download_url":"https://codeload.github.com/axe-selenium-python/axe-selenium-python/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235064305,"owners_count":18930088,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-09-28T08:01:20.720Z","updated_at":"2025-01-22T04:32:09.937Z","avatar_url":"https://github.com/axe-selenium-python.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"axe-selenium-python\n====================\n\naxe-selenium-python integrates aXe and selenium to enable automated web accessibility testing.\n\n**This version of axe-selenium-python is using axe-core@4.10.2.**\n\n.. image:: https://img.shields.io/badge/license-MPL%202.0-blue.svg\n   :target: https://github.com/axe-selenium-python/axe-selenium-python/blob/master/LICENSE.txt\n   :alt: License\n.. image:: https://img.shields.io/pypi/v/axe-selenium-python.svg\n   :target: https://pypi.org/project/axe-selenium-python/\n   :alt: PyPI\n.. image:: https://img.shields.io/github/issues-raw/axe-selenium-python/axe-selenium-python.svg\n   :target: https://github.com/axe-selenium-python/axe-selenium-python/issues\n   :alt: Issues\n\nRequirements\n------------\n\nYou will need the following prerequisites in order to use axe-selenium-python:\n\n- selenium \u003e= 4.2\n- Python 3.12+\n- The appropriate driver for the browser you intend to use, downloaded and added to your path, e.g. geckodriver for Firefox:\n\n  - `geckodriver \u003chttps://github.com/mozilla/geckodriver/releases\u003e`_ downloaded and `added to your PATH \u003chttps://stackoverflow.com/questions/40208051/selenium-using-python-geckodriver-executable-needs-to-be-in-path#answer-40208762\u003e`_\n\nInstallation\n------------\n\nTo install axe-selenium-python:\n\n.. code-block:: bash\n\n  $ pip install axe-selenium-python\n\n\nUsage\n------\n\n.. code-block:: python\n\n  from selenium import webdriver\n  from axe_selenium_python import Axe\n\n  def test_google():\n      driver = webdriver.Firefox()\n      driver.get(\"http://www.google.com\")\n      axe = Axe(driver)\n      # Inject axe-core javascript into page.\n      axe.inject()\n      # Run axe accessibility checks.\n      results = axe.run()\n      # Write results to file\n      axe.write_results(results, 'a11y.json')\n      driver.close()\n      # Assert no violations are found\n      assert len(results[\"violations\"]) == 0, axe.report(results[\"violations\"])\n\nThe method ``axe.run()`` accepts two parameters: ``context`` and ``options``.\n\nFor more information on ``context`` and ``options``, view the `aXe documentation here \u003chttps://github.com/dequelabs/axe-core/blob/master/doc/API.md#parameters-axerun\u003e`_.\n\nContributing\n------------\n\nFork the repository and submit PRs with bug fixes and enhancements;\ncontributions are very welcome.\n\nNode dependencies must be installed by running `npm install` inside the axe-selenium-python directory.\n\nYou can run the tests using\n`tox \u003chttps://tox.readthedocs.io/en/latest/\u003e`_:\n\n.. code-block:: bash\n\n  $ tox\n\nCHANGELOG\n^^^^^^^^^^^^^^\n\nversion 3.0\n***********\n\n- Bumped minimum Python version to 3.12\n- Updated axe to ``axe-core@4.10.2``\n\nversion 2.1.5\n*************\n**Breaks backwards compatibility**:\n\n- The Axe class method ``execute`` has been renamed to ``run`` to mirror the method in the axe-core API.\n\nversion 2.1.0\n**************\n- Created package.json file to maintain axe-core dependency\n- Replaced unit tests with more meaningful integration tests\n  - included a sample html file for integration tests\n\nversion 2.0.0\n**************\n- All functionalities that are not part of axe-core have been moved into a separate package, ``pytest-axe``. This includes:\n\n  - ``run_axe`` helper method\n  - ``get_rules`` Axe class method\n  - ``run`` Axe class method\n  - ``impact_included`` Axe class method\n  - ``analyze`` Axe class method.\n\nThe purpose of this change is to separate implementations that are specific to the Mozilla Firefox Test Engineering team, and leave the base ``axe-selenium-python`` package for a more broad use case. This package was modeled off of Deque's Java package, axe-selenium-java, and will now more closely mirror it.\n\nAll functionalities can still be utilized when using ``axe-selenium-python`` in conjunction with ``pytest-axe``.\n\nversion 1.2.3\n**************\n- Added the analyze method to the Axe class. This method runs accessibility checks, and writes the JSON results to file based on the page URL and the timestamp.\n- Writing results to file can be enabled by setting the environment variable ``ACCESSIBILITY_REPORTING=true``. The files will be written to ``results/`` directory, which must be created if it does not already exist.\n- Accessibility checks can be disabled by setting the environment variable ``ACCESSIBILITY_DISABLED=true``.\n\nversion 1.2.1\n**************\n- Updated axe to ``axe-core@2.6.1``\n- Modified impact_included class method to reflect changes to the aXe API:\n- There are now only 3 impact levels: 'critical', 'serious', and 'minor'\n\nversion 1.0.0\n**************\n- Updated usage examples in README\n- Added docstrings to methods lacking documentation\n- Removed unused files\n\nversion 0.0.3\n**************\n- Added run method to Axe class to simplify the usage in existing test suites\n- run method includes the ability to set what impact level to test for: 'minor', 'moderate', 'severe', 'critical'\n\nversion 0.0.28\n****************\n- Added selenium instance as a class attribute\n- Changed file paths to OS independent structure\n- Fixed file read operations to use with keyword\n\n\nversion 0.0.21\n***************\n- Fixed include of aXe API file and references to it\n- Updated README\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faxe-selenium-python%2Faxe-selenium-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faxe-selenium-python%2Faxe-selenium-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faxe-selenium-python%2Faxe-selenium-python/lists"}