Show last authors
1 {{box cssClass="floatinginfobox" title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
5 Most [[WCAG>>http://en.wikipedia.org/wiki/Web_Content_Accessibility_Guidelines]] tests are automated in the {{scm path='xwiki-platform-tools/xwiki-platform-tool-standards-validator/src/main/java/org/xwiki/validator/HTML5DutchWebGuidelinesValidator.java#L48'}}##xwiki-platform-distribution-flavor-test-webstandards##{{/scm}} module, but some must still be verified manually by validating the pages against the **[[Dutch Guidelines validation tool>>http://www.webrichtlijnen.nl/english/testing]]** (See [[XHTML & CSS Coding Style>>Community.XhtmlCssCodeStyle]]).
6
7 = Other WCAG validators =
8
9 The following WCAG testing tools can also be used for additional checks and are listed for reference:
10
11 * [[TAW3>>http://www.tawdis.net/ingles.html?lang=en]] ([[Tutorial>>http://www.ariadne.ac.uk/issue46/lauke/]] for the [[Web start version>>http://www.tawdis.net/taw3/descargas/jws/es/taw3.jnlp]]).
12 * [[Total Validator>>http://www.totalvalidator.com/tools/index.html]]
13 * [[Web Accessibility Inspector>>http://www.fujitsu.com/global/accessibility/assistance/wi/]] (lots of automated checks)
14 * [[Wave>>http://wave.webaim.org/]] (ability to paste HTML content or upload a local file)
15 * [[Cynthia>>http://www.contentquality.com/]] (emulates browsers)
16 * [[AChecker>>http://achecker.ca/checker/index.php]]
17 * [[Hera>>http://www.sidar.org/ex_hera/]]
18 * [[Firefox Web Developer Tool tutorial for Accessibility>>http://www.ariadne.ac.uk/issue44/lauke/]]
19
20 = Links =
21
22 * [[Accessibility survey>>http://webaim.org/projects/screenreadersurvey/]]
23
24 = Test Exceptions =
25
26 == Hidden pages ==
27
28 Hidden pages are not meant to be viewed by the user, so in order to simplify the management of WCAG validation, we decided to skip them for now.
29 See the full discussion related to this decision [[here>>https://markmail.org/message/okihfnpkavhnbkib]].
30
31 Some hidden pages containing specific objects are still viewable by the users: we use a whitelist to enforce the check on them.
32 The full list of exceptions is then available in the dedicated [[pom.xml>>https://github.com/xwiki/xwiki-platform/blob/master/xwiki-platform-distribution/xwiki-platform-distribution-flavor/xwiki-platform-distribution-flavor-test/xwiki-platform-distribution-flavor-test-webstandards/pom.xml#L101]].
33
34 == Other Exceptions ==
35
36 Here are some exceptions that make the WCAG validators fail but that we consider valid (i.e. we consider the validators are overzealous in these cases).
37
38 {{info}}
39 The up to date and exact excludes can be found in the {{scm path="xwiki-platform-distribution/xwiki-platform-distribution-flavor/xwiki-platform-distribution-flavor-test/xwiki-platform-distribution-flavor-test-webstandards/src/test/it/org/xwiki/test/webstandards/CustomDutchWebGuidelinesValidator.java"}}WCAG validation java code{{/scm}}.
40 {{/info}}
41
42 * We are using the ##H1## element several times on pages, once for the page title and once for the header level 1 from the page's content. We consider that this doesn't violate the rule "Do not skip any heading elements in the document hierarchy." since we're not skipping any level. //Fails with [[Dutch Guidelines validation tool>>http://www.webrichtlijnen.nl/english/testing]]//
43 * "Use (at least) the meta element to specify the character set and place this element as high as possible in the head section of the markup.". The Content-Type META element is th first one in the HEAD element and cannot be placed higher. //Fails with [[Dutch Guidelines validation tool>>http://www.webrichtlijnen.nl/english/testing]]//
44 * The **ColorThemes** application is using inline styles to display a preview of the colors and options of themes, this is something we cannot easily avoid.
45 * The XWiki syntax allows using elements which are not allowed by accessibility guidelines. **Sandbox.WebHome** contains demonstrations which does not satisfy the following guidelines:
46 ** "Use the headers and id attributes to associate table labels (th cells) with individual cells in complex tables"
47 ** "Use the scope attribute to associate table labels (th cells) with columns or rows. "
48 ** "The use of sub and sup tags is not allowed."
49 * The XWiki syntax allows using elements which are not allowed by accessibility guidelines. **XWiki.XWikiSyntax** contains demonstrations which does not satisfy the following guidelines:
50 ** "Use the p (paragraph) element to indicate paragraphs. Do not use the br (linebreak) element to separate paragraphs."
51 ** "Use ol (ordered list) and ul (unordered list) elements to indicate lists."
52 ** "Use the headers and id attributes to associate table labels (th cells) with individual cells in complex tables"
53 ** "Use the scope attribute to associate table labels (th cells) with columns or rows. "
54 ** "The use of sub and sup tags is not allowed."
55 ** "Links to e-mail addresses: the e-mail address to which the message is addressed must be visible in the link text.
56 ** "CSS should be placed in linked files and not mixed with the HTML source code."
57 * The **Panels.PanelWizard** and **XWiki.Treeview** pages are relying on JavaScript libraries that needs some HTML elements to contain inline styles.
58
59 = Testing Sessions =
60
61 Since WCAG tests are not fully automated (and not full automatable) we have manual testing sessions that we do from time to time:
62
63 * [[Session for XE 2.1>>WCAGTestingSessionXE21]]
64 * Testing session by NGI Accessibility ([[Report>>attach:Report_NGI_XWiki-2020-10)15.pdf]])
65
66 = Future =
67
68 * We need to drop the Dutch Guidelines and upgrade to WCAG 2.1+ by using a framework allowing us to execute the tests in our build
69 ** [[last design analysis>>design:Proposal.WCAG10x]]
70 ** Some interesting framework we could use:
71 *** [[Code Sniffer>>https://github.com/squizlabs/HTML_CodeSniffer]]
72 *** [[Paypal AATT>>https://github.com/paypal/AATT]]
73 *** [[DequeLabs axe-core>>https://github.com/dequelabs/axe-core]]

Get Connected