跳转到主要内容

用于集成axe和selenium进行网页无障碍性测试的Python库。

项目描述

axe-selenium-python集成了aXe和selenium,以实现自动化网页无障碍性测试。

此版本的axe-selenium-python使用axe-core@3.3.2。

License PyPI Travis Issues Dependabot Coveralls

要求

要使用axe-selenium-python,您需要以下先决条件

  • selenium >= 3.0.0

  • Python 2.7或3.6

  • 您打算使用的浏览器的适当驱动程序,下载并添加到您的路径中,例如Firefox的geckodriver

安装

要安装axe-selenium-python

$ pip install rh-axe-selenium-python

用法

from selenium import webdriver
from axe_selenium_python import Axe

def test_google():
    driver = webdriver.Firefox()
    driver.get("http://www.google.com")
    axe = Axe(driver)
    # Inject axe-core javascript into page.
    axe.inject()
    # Run axe accessibility checks.
    results = axe.run()
    # Write results to file
    axe.write_results(results, 'a11y.json')
    driver.close()
    # Assert no violations are found
    assert len(results["violations"]) == 0, axe.report(results["violations"])

方法axe.run()接受两个参数: contextoptions

有关contextoptions的更多信息,请参阅aXe文档

贡献

分支存储库并提交包含错误修复和改进的PR;非常欢迎贡献。

节点依赖必须通过在axe-selenium-python目录下运行 npm install 来安装。

您可以使用 tox 来运行测试。

$ tox

资源

变更日志

版本 2.1.5

破坏了向下兼容性:

  • Axe 类的 execute 方法已被重命名为 run,以与 axe-core API 中的方法相匹配。

版本 2.1.0

  • 创建 package.json 文件以维护 axe-core 依赖。

  • 用更具意义的集成测试替换了单元测试 - 包含一个用于集成测试的示例 html 文件。

版本 2.0.0

  • 所有不属于 axe-core 的功能都已移动到单独的包 pytest-axe 中。这包括

    • run_axe 辅助方法

    • get_rules Axe 类方法

    • run Axe 类方法

    • impact_included Axe 类方法

    • analyze Axe 类方法。

此更改的目的是将特定于 Mozilla Firefox 测试工程团队的实施分离出来,并将基本的 axe-selenium-python 包留给更广泛的使用场景。此包是根据 Deque 的 Java 包 axe-selenium-java 设计的,现在将更接近于它。

在使用 axe-selenium-pythonpytest-axe 一起时,仍可利用所有功能。

版本 1.2.3

  • 向 Axe 类添加了 analyze 方法。此方法运行可访问性检查,并根据页面 URL 和时间戳将 JSON 结果写入文件。

  • 通过设置环境变量 ACCESSIBILITY_REPORTING=true 可启用将结果写入文件。文件将写入 results/ 目录,如果尚未创建,则需要创建。

  • 通过设置环境变量 ACCESSIBILITY_DISABLED=true 可禁用可访问性检查。

版本 1.2.1

  • 将 axe 更新为 axe-core@2.6.1

  • 修改了 impact_included 类方法,以反映 aXe API 的更改。

  • 现在只有 3 个影响级别:“critical”(临界),“serious”(严重)和“minor”(轻微”)。

版本 1.0.0

  • 更新了 README 中的使用示例。

  • 为缺少文档的方法添加了文档字符串。

  • 删除了未使用的文件。

版本 0.0.3

  • 向 Axe 类添加了 run 方法,以简化现有测试套件中的使用。

  • run 方法包括设置要测试的影响级别的功能:“minor”(轻微),“moderate”(中等),“severe”(严重),“critical”(临界”)。

版本 0.0.28

  • 将 selenium 实例添加为类属性。

  • 更改文件路径以使用与操作系统无关的结构。

  • 修复了文件读取操作以使用关键字。

版本 0.0.21

  • 修复了包含 aXe API 文件和对其的引用。

  • 更新了 README。

项目详情


下载文件

下载适合您平台的文件。如果您不确定要选择哪个,请了解更多关于 安装包 的信息。

源分布

rh-axe-selenium-python-21.5.19.2.tar.gz (180.0 kB 查看哈希值)

上传于

构建分发版

rh_axe_selenium_python-21.5.19.2-py2.py3-none-any.whl (177.6 kB 查看哈希值)

上传于 Python 2 Python 3

支持者