Today's call and Keyboard Navigation

Dear All,

If I can escape from my client meeting at a decent hour, I can join you
all, but it might not happen.  Apologies in advance.


I have been trying my hand at elaborating 2.1.1 (for future discussion) ;
thanks Wilco for correcting my wiki use error.   I had short circuited the
SC and was putting all the tests in one place.

I have corrected this, but so have not yet moved onto elaboratiing any of
the tests.  My general outline is in this mail,

Best for the meeting

John



General outline of approach for auto-keyboard testing

== Description ==
That the navigation of the page be possible without using a pointer (mouse
or trackpad); that is, with the keyboard we can traverse, activate and
manipulate the same elements in the page as with the pointer.   The full
scope of 2.1.1 is wide, including drag and drop, resizing and drawing of
simple elements (not dealt with here).

* The obstacle of keyboard traps is dealt with in 2.1.2
* The issue of visible focus is dealt with in 2.4.7
* Tab order must be logical (sequential and visually obvious).

Traditionally this SC is not tested for automatically, but manually.
However a well devised automatic non-exhaustive test is still possible,
based on the following reasoning.

* True links and true form elements can recieve keyboard focus.
* Any other element in the DOM with which we can interact will have an
appropriate event listener.
* If this element is not a form element or a link, it must have a tabindex
attribut that is zero or greater.
* If it has listeners that refer to the mouse only, they must be doubled by
their keyboard counterparts.

[http://www.w3schools.com/jsref/dom_obj_event.asp List of event listeners]

We are thus looking for:
* elements which have event listeners of any kind, but which are not "a"
tags or "input" tags and which do not have tabindex set to 0 or greater.
* elements which have mouse related event listeners but not keyboard
related event listeners.
* True links with tabindex set to -1
* Inputs with tabindex set to -1

If we find such things, the test will fail.

Received on Thursday, 23 October 2014 10:43:46 UTC