umbraco / Umbraco-CMS.Accessibility.Issues

6 stars 1 forks source link

ATAG - Feature - Validating the accessibility of the content: Testing the whole website #81

Open DannyLancaster opened 1 year ago

DannyLancaster commented 1 year ago

An accessibility test of the whole website is valuable to the website owner for compliance reasons, but also to be able to detect any specific departments or kind of content that needs refinement or groups of staff who need training.

Web author view

image

Possible built-in success criteria conformance tests to be done:

Tools like Sa11y and Editoria11y allow web authors to focus on what they can control. Most accessibility errors are introduced in the editor’s body field, so it is possible to target the WYSIWYG to that field and generate accessibility errors that target that section of the page specifically.

Sa11y - https://ryersondmp.github.io/sa11y/#install Editorially - https://itmaybejj.github.io/editoria11y/

Editoria11y needs to have JavaScript added to the HTML headers for the page:

<script [src="https://code.jquery.com/jquery](http://src%3D%22https//code.jquery.com/jquery) -3.5.1.min.js"></script>
<link rel="stylesheet" media="screen" href="/css/editoria11y.css">
<script src="/js/editoria11y-prefs.js"></script>
<script src="/js/editoria11y-localization.js"></script>
<script src="/js/editoria11y.js"></script>

Guide to implementation

The authoring tool does a request to the 3rd party service (the testing tool that usually includes some authorisation information (that is stored in the authoring tool itself), because the third-party service is usually not open to the public and may include usage fees. The 3rd party service then responds with results of the check (either HTML or JSON/XML via a REST API or something similar), which is embedded in the authoring tool view. The embedding often happens at the browser level (with JavaScript) because this is the most lightweight and flexible method of embedding external content from a 3rd party service.

Video documentation

https://youtu.be/gyBDdZy2rt4

Recommendations for implementation

To make sure the implementation of the features is not causing accessibility problems for web authors with disabilities:

ravimotha commented 1 year ago

Just looking over this , i think there is a obvious 3 part way this that could make it a killer feature

  1. A dashboard that show general errors ( maybe a little graph or set of number like the error log currently does) 2 . A new section for this with a deeper dive 3 . a context app that shows the issues that need addressing per page

The Tests the tests should be configurable and they can be added to etc by update and Pull request

Dashboard/Health Check The dashboard should a simple visual guide saying tests xyz and have failed .. and success should also be shown

The Accessibility section simple interface to see all the details of the errors , which pages and what fixes need to be implemented

The Context app should be visible on a page and allow users to see see if there are issues on that page and what the are

@DannyLancaster what do you think??