Giter Site home page Giter Site logo

caiquecoelho / robot-axe-library Goto Github PK

View Code? Open in Web Editor NEW
4.0 2.0 2.0 396 KB

A RobotFramework Library wrapper for axe-selenium-python package. This library can help you catch any accessibility issue in your web page or app.

License: MIT License

Python 3.93% HTML 95.41% RobotFramework 0.65% Makefile 0.02%
robotframework axe python accessibility wcag testing testing-tools appium selenium

robot-axe-library's Introduction

Robot Axe Library

GitHub license

This project is a RobotFramework Library wrapper for axe-selenium-python package. In this project we abstracted the entire library setup for use in robotframework and also implemented the entire interface for communicating with the AXE library allowing to define specific filters to look for accessibility issues in addition to allowing the necessary assertions on the test side, for your your test passes or fails depending on the configuration you want, allowing a maximum number of issues, excluding elements you don't want to analyze, and allowing you to define specific accessibility rules, levels, tags and impact.

How to install

pip install robot-axelibrary==0.1.8

How to use

*** Settings ***
Library     SeleniumLibrary
Library     RobotAxeLibrary

*** Test Cases ***
Default Check Pass

   Open Browser                        https://retrospective-twitter.web.app/  chrome
   Wait Until Page Contains            Faça o login com a sua conta do twitter
   Check for accessibility issues
   Should Not Exceed Maximum Issues    2

Keywords Documentation

Click Here

Glossary

  • Violation: A violation is a type of accessibility problem, for example a color-contrast problem or a missing aria-label
  • Issue: An issue is the occurrence of a violation in one element or more, for example we can get 2 issues from the type color-contrast and 1 from aria-label

Feature Request

If you have any feature request just open an issue describing your request or feel free with your feature! Any pull pull request are welcome!

Found an issue?

Register the issue here and wait for us to solve it as soon as possible. In addition, any contribution is welcome, so feel free to make a pull request if you want to solve any problem :happy:

License

MIT

Project Inspiration

robotframework-axelibrary by @adiralashiva8

robot-axe-library's People

Contributors

caiquecoelho avatar caiquecoelhozx avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

pk3623 jg8481

robot-axe-library's Issues

Allow a max number of issues per element

Why
Sometimes we want to allow a maximum number of issues in a specific element

How
We should be able to pass a maximum number of issues in one or more specific elements in the keyword, and only return from the python code other elements with issues or the element passed if the total issues are greater than the maximum passed

Allow a max number of issues per violation

Why
Sometimes we want to allow a maximum number of issues per violation, for example, we should only get 2 buttons with a color contrast problem, if we get 3 we will return an error.

How
We should be able to pass a maximum number of issues allowed per violation in the keyword, and only return from the python code an error if the total of issues is greater than the maximum allowed

Filter issues by impact

Why
All violations have a type of impact. Sometimes we want to get only the serious or dangerous.

How
We should be able to pass the type of impact we want to get in the keyword, and only return from the python code the issues with the impact selected

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.