GithubHelp home page GithubHelp logo

global19-atlassian-net / axe-windows Goto Github PK

View Code? Open in Web Editor NEW

This project forked from microsoft/axe-windows

0.0 1.0 0.0 2.07 MB

Automated accessibility testing engine for Windows applications

License: MIT License

C# 96.05% HTML 0.30% PowerShell 0.64% C++ 0.20% C 0.10% Rich Text Format 2.70%

axe-windows's Introduction

Overview

Axe.Windows is a NuGet package for running automated accessibility tests on Windows® applications.

To get the latest version of the Axe.Windows NuGet package, visit Axe.Windows on NuGet.org.

How to run automated accessibility tests

  1. Create a Config object using Config.Builder.

     // Create config to specifically target a process
     var myConfigBuilder = Config.Builder.ForProcessId(1234);
    
     // Optional: configure to create an A11yTest file
     myConfigBuilder.WithOutputFileFormat(OutputFileFormat.A11yTest);
    
     // Optional: configure to output the file to a specific directory (otherwise, current directory will be used)
     myConfigBuilder.WithOutputDirectory(".\test-directory");
    
     // Ready to use config
     var myConfig = myConfigBuilder.build();
    
  2. Create a Scanner object using the ScannerFactory object with the Config.

     // Create scanner using myConfig
     var scanner = ScannerFactory.CreateScanner(myConfig);
    
  3. Call the Scan method on the Scanner object.

     var scanResults;
     try
     {
         scanResults = scanner.Scan();
     }
     catch(AxeWindowsAutomationException e)
     {
         Console.WriteLine(e.ToString());
     }
    
  4. Check the results.

     Console.WriteLine("Number of errors found in scan: " + scanResults.ErrorCount);
    
  • Use an automation test framework like UI Automation or WinAppDriver to manipulate your application
  • Scan your application as many times as you need to
  • Axe.Windows returns results with each scan and can optionally save each scan's results to an a11ytest file you can open with Accessibility Insights

For more details and a complete code example, please visit the automation reference page

Command line interface

Axe.Windows also has a command line interface (CLI) to simplify automated testing in build pipelines. Please check out the command line interface readme for more information.

Contributing

All contributions are welcome! Please read through our guidelines on contributions to this project.

For instructions on how to build the code, please visit building the code.

For an overview of the solution, please visit the solution overview.

More information

Visit the Overview of Axe.Windows page.

Data/Telemetry

Axe.Windows does not collect any telemetry on its own. However, the package does provide telemetric data for use by calling applications. Please see the Telemetry page for more details.

Reporting security vulnerabilities

If you believe you have found a security vulnerability in this project, please follow these steps to report it. For more information on how vulnerabilities are disclosed, see Coordinated Vulnerability Disclosure.

FAQ

Please visit our FAQ section to get answers to common questions.

axe-windows's People

Contributors

ahmedabdoortiga avatar alsorokin avatar davetryon avatar dbjorge avatar decriptor avatar dependabot-preview[bot] avatar ferbonnin avatar guybark avatar jalkire avatar karanbirsingh avatar lisli1 avatar microsoftopensource avatar msftgits avatar peterdur avatar robgallo avatar tony-xia avatar waabid avatar

Watchers

 avatar

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.