Skip to main content

Screen reader accessibility verification test for Web checklist V5.1

Document version 1.0

Introduction

This document provides details on how to use a screen reader when performing an accessibility verification test (AVT) of Web pages and Web applications. For accessibility compliance, the following must be verified with a screen reader:

  1. Ability to navigate the Web content.
  2. Ability to understand the Web content.
  3. Ability to operate any controls in the Web content.

There are two approaches to testing with a screen reader. The first is a task-oriented "system test" approach used to verify the user's ability to accomplish the tasks provided by the Web content. This is the approach to use when performing the screen reader test. The second approach is a unit test, or checkpoint-oriented approach, this approach should be used to verify that a specific widget in the Web content is working properly, rather than testing the page as a whole. This document is organized to help accomplish the screen reader test using either approach. See the section titled "Recommended approach for compliance test" for information on how to approach a screen reader test from an end-user's perspective, and the test section in each checkpoint for information on testing specific types of Web content.

A screen reader should be used as a final test to verify the content from an end-user's perspective. There are other inspection tools and manual test steps that should be performed before a screen reader is used to test the Web content. Inspection tools and the manual test steps allow can help to assess and verify the accessibility enablement of the Web content. By finding and fixing as many enablement issues as possible first, the screen reader test is much quicker and easier to perform.

Screen reader compliance test

The screen reader compliance test is in the form of user-oriented tasks. To perform the test, understand the tasks the user needs to accomplish when interfacing with and navigating the Web content. Group the tasks into end user scenarios use the scenarios to verify that a person who is blind can actually accomplish the tasks using only the keyboard (no mouse) and a screen reader. While testing the user scenarios, also test specific types of Web content. Refer to the checkpoint-oriented test techniques later in this document for more specific details.

Although the checkpoints in the Web checklist document the accessibility requirements, it is important to test the application in a realistic manner. The following is a general approach for testing with a screen reader. The approach is to test the application's functionality with the screen reader. The details for how to perform the steps can be found in the individual checkpoint breakdown below.

  1. Locate common items such as Help, Site Map, etc that can be useful to familiarize the user with the site and functionality.
  2. Exercise the navigation items in any navigation bar that may be in the content to explore the contents of the site.
  3. Use the "Skip to main content" to access the main content area.
  4. Use the short cuts and functionality provided by the screen reader and by the operating system to aid in navigation and interacting with the content. Understanding and test using these short cuts and built-in navigation functionality will ensure that the test scenarios use the same techniques that are used by the end users. For example on Microsoft® Windows® operating system, the tab key and arrow keys are used for keyboard navigation.
  5. If there is a registration form, access it and be sure that the forms are accessible.
  6. Determine if the page uses headings and lists appropriately. This helps the end user navigate easier, especially if the screen reader supports headings and lists. For example, text in bold made to look like headings should use heading markup. Similarly, text made to look like lists should use list markup.
  7. Locate tables in the application that are used to present data in a tabular format and test that the screen reader announces them appropriately.
  8. Locate any charts, graphs or complex images (images that depict relationships between entities or images that give instruction). Test that the screen reader announces them properly and that the text alternatives adequately represent the content.
  9. Throughout the test there will be images that need appropriate alternative text. The text alternatives should be meaningful and useful to a user who can not see the screen.

Required test techniques for individual Web checkpoints

The following sections provide details on how to use a screen reader to test specific elements covered by each of the checkpoints in the Web checklist version 5.1. Use the test techniques described here in conjunction with the recommended approach for compliance testing described previously in this document.
The following identifies all the checkpoints in the Web checklist that can be verified using the screen reader.


1.1a: Text alternatives, 1.1c Image maps

1.1a: All non-text content that is presented to the user has a text alternative that serves the equivalent purpose.
1.1c: Client-side image maps are used and alternative text is provided for image map hot spots. Equivalent text links are provided if a server-side image map is used. Verify several things concerning images:

  1. For meaningful images, the screen reader must recognize and speak aloud the alt text, and verify that the text is meaningful.
  2. If the image is too complex to describe in the alt text, (such as in the case of a complex image or chart), the alt text must inform the user as to where to find the accessible text alternative.
  3. For decorative or redundant images, the screen reader must ignore the image.

How to test 1.1a and 1.1c:

Action:

Use one of the following methods to either view or listen to the alt text for each image.

Required test techniques:

  1. For each image that contains alt text:
  2. For each image that does not contain alt text (images that are ignored by the screen reader or are not in a graphics list presented by the screen reader):
  3. If the image is too complex to adequately describe briefly with alt text (such as graphs or charts),
  4. For the area elements of image maps,

1.1b: Non-text content

1.1b: A descriptive label is provided for time-based media, including live audio-only or live video-only content. Non-text content that is used to confirm that content is being accessed by a person rather than a computer is available in different forms to accommodate multiple disabilities.

How to test 1.1b:

Action:

Required test techniques:

  1. For each live audio-only and live video-only,
  2. For the non-text content intended to provide a specific sensory experience,
  3. If non-text content is a CAPTCHA,

1.2b: Audio and video (prerecorded)

1.2b: Audio descriptions of video, or a full multimedia text alternative including any interaction, are provided for prerecorded multimedia.

How to test 1.2b:

It is important that a person who is blind or visually impaired have access to the visual information provided in the multimedia through audio description or full multimedia text alternative describing everything that is happening in the multimedia.

Required test techniques:

  1. For prerecorded audio-only, video only or Audio + video content listen to the screen reader output and verify:

1.3a: Information relationships, 1.3c: Meaningful sequence, 1.3d: Forms, and 1.3e: Tables

1.3a: Information structure, and relationships conveyed through presentation can be programmatically determined or are available in text.
1.3c: When the sequence in which content is presented affects its meaning, a correct reading sequence can be programmatically determined.
1.3d: Form element labels can be programmatically determined.
1.3e: Table cells and relationships between cells can be programmatically determined

How to test 1.3a, 1.3c, 1.3d, 1.3e:

Actions:

Navigate to specific elements in the content and listen to the screen reader output. When interacting with different types of content, traverse through the content forward as well as in reverse. When the screen reader provides functionality to quickly navigate to specific types of content, use that method to locate that content and navigate to it. Listen to the screen reader and interact with the content/elements using the screen reader's recommended methods. Navigation to specific types of content might include:

Required test techniques:

  1. For each data table in the content,
    1. Verify that a meaningful summary for the table is provided.
    2. Traverse the data table using the screen reader's recommended method. Traverse forward as well as backward through the content.
    3. Verify column headers are provided when traversing columns. The screen reader should announce the header followed by the cell contents.
    4. Verify row headers are provided when traversing rows. Screen readers normally announce row headers followed by the cell contents.
    5. If a Caption for the table is provided, verify the caption for the table is read by the screen reader and is an appropriate caption for the table. For example, the caption should not be the same as the table summary.
  2. For each form control in the content,
    1. Verify that a label that identifies the purpose of the control before the input element for the form control is provided or a title is provided where labels cannot be used and that the screen reader reads the label or the title provided.
    2. Verify that groups of logically related input elements are contained within group and a description of that group is provided and the screen reader can read this information.
    3. For all form fields where input is required, verify that the screen reader conveys to the user that the input is required when the field receives focus.
  3. For each list in the content,
    1. Verify that content that has the visual appearance of a list (with or without bullets) is announced as an unordered list.
    2. Verify that content that has the visual appearance of a numbered list is announced as an ordered list. Verify that the numbers are read with the items in the list.
  4. For each header in the content,
    1. Verify any content that appears to be a heading within the Web content is announced as a header along with its level.
  5. Verify that all content including tables, forms, and lists are announced in a linear logical form as it appears visually and the content makes sense.
  6. For each word that appears to have non-standard spacing between characters:
    1. Verify that the screen reader announces the entire word and does not spell the word letter by letter.

1.3f: Cascading style sheets

1.3f: Hiding content using style sheets:

How to test 1.3f:

This technique applies to Web pages where content has been hidden from the visual display of a Web page, and is intended for use with screen readers to provide additional information to blind users.
Note that this test requires an understanding of the product specification and the intended design of the Web page, as well as understanding which areas of the Web page are expected to contain hidden content that is intended for use by screen readers.

Required test technique:

  1. Navigate to all areas of the Web page that contain hidden content.

2.1a: Keyboard, 2.1b Scripts, 2.4e Focus order, 4.1b Name, role, value

How to test 2.1a, 2.1b, 2.4e, 4.1b:

Required test technique:

  1. Navigate the content of the Web page using combination of Tab and arrow keys.
    1. Verify that the user can navigate to and operate each control or function with 'Enter' key or 'Space' in the content with keyboard or keyboard interface using a screen reader "except where the underlying function requires input that depends on the path of the user's movement and not just the endpoints".
    2. Verify that the Name, Role, State and Value if any, are announced for each instance of links and form controls.
  2. For the content that relies on sequential navigation in order to be understood, verify that the focus order is logical, preserves meaning and operability when traversing using keyboard navigation and the screen reader.
  3. If any content is generated or changed by the script on the page, in a new window or a popup, verify that the updated content is announced by the screen reader appropriately.
  4. If any content is generated or changed dynamically, verify that the updated content is inserted in the Document Object Model (DOM) immediately following its trigger element and so it is the next element the screen reader encounters.

2.4a: Navigational features, 2.4c: Frames

2.4a: Navigational features - A mechanism is available to bypass blocks of content that are repeated on multiple Web units and skipping over navigation links to get to main content of page.
2.4c: Frames - A title and an accessible frame source are provided for each frame

How to test 2.4a, 2.4c:

It is important to structure Web content in such a way that content is found quickly and easily by using methods other than a mouse. This means providing a way to skip over the primary navigation links with a skip to main content link, grouping elements together along with functionality that allows users to skip over large blocks of similar content like navigation links, use of frames to organize its content, and the use of WAI-ARIA landmark roles in the content. For details on support for WAI-ARIA landmarks refer the development section of this checkpoint point.
WAI-ARIA landmarks are required as follows:

Actions:

Navigate to specific elements in the content and listen to the screen reader output. When the screen reader provides the functionality to quickly navigate to specific types of content, use that method to locate the content, navigate to it, and listen to the screen reader as well as interact with the content as denoted to validate the implementation. Navigation to specific types of content might include:

Required test techniques:

  1. Navigate to the Web page that uses a navigation bar or other banner information that is located at the beginning of the Web page. When the screen reader provides functionality for navigating, use that functionality as part of this validation.
    1. Verify that a 'main landmark' is provided to get to the main content on the page. Use the screen reader functionality to display a list of landmarks.
    2. Verify that a 'Skip to main content' link is provided at the top of the page. This should be the first link in the screen reader links list dialog.
    3. Verify that the link description is appropriate, unique, and that activating this link moves the focus to the appropriate content.
    4. If the page contains a search field and the screen reader provides the list landmarks functionality, verify a 'search landmark' is provided in the list of landmarks.
    5. If the page contains a set of navigation links, verify a 'navigation landmark' list displays all the navigation landmarks on the Web page. Perform this test using the functionality provided by the screen reader.
  2. Navigate to blocks of repeated material in the Web content and verify at least one of the following is true.
    1. If heading elements are used for blocks of material in the Web content, navigate to or skip through them using the functionality built into the screen reader.
    2. If frame elements are used for blocks of material in the Web content, navigate to or skip through them by using the functionality built into the screen reader. Also be sure the appropriate information is announced by the screen reader. For example, the screen reader should announce the appropriate title for the frame or iframe.
    3. If a user interface control is used that allows the repeated content to be expanded or collapsed,
  1. When links are provided at the top of the page to navigate to each area of the content, or links are provided at the beginning of each block of material to allow the user to skip blocks of repeated material then,
    1. Verify that the description of the link communicates the intent to navigate to content area or skips the block of content appropriately.
    2. Verify that the end user can use the screen reader to activate these links to navigate to or skip the appropriate content.

2.4d: Page titles, 2.4f: Link purpose

2.4d: Page titles- Web pages have titles that describe a topic or purpose.
2.4f: Link purpose - The purpose of each link can be determined from the link text alone, or from the link text together with its programmatically determined link context, except where the purpose of the link would be ambiguous to users in general.

How to test 2.4d, 2.4f:

Screen readers help users who are blind orient themselves by reading page titles before reading other page content. This enables the quick identification of pages within a Web site or Web application. If titles are missing or not descriptive, it forces screen reader users to browse deeply into the content in order to determine the essence of a page.

Action:

Required test techniques:

  1. For every page of the Web content,
    1. Verify that the screen reader announces the page title and that the title is relevant to the content of the Web page.
  2. For every link on the page
    1. Verify that the link text describes the purpose of the link using the links list feature of the screen reader. Be sure link text is unique for each link.
    2. When it isn't possible to provide descriptive text in links, verify that the user is able to determine the purpose of a link from the surrounding text and the link context without having to move focus away from the link.
    3. Note: It is recommended that any additional information needed to understand the link precedes the link to help the screen reader user. For example, the link text is combined with the preceding header or the enclosing list.

3.2b: On input, 3.3a Error identification, 3.3b Labels or instructions

3.2b: Changing the setting of any user interface component does not automatically cause a change of context unless the user has been advised of the behavior before using the component.
3.3a: Help users avoid and correct mistakes.
3.3b: Labels or instructions are provided when content requires user input.

How to test 3.2b, 3.3a, 3.3b:

  1. It is essential that screen reader users are notified in advance what to expect when they activate or use a control.
  2. Help users avoid and correct mistakes.
  3. Labels or instructions are provided when content requires user input.

Action:

Required test techniques:

  1. For all form fields that require user input,
  2. Locate content where changing the setting of a form control results in a change of context,
  3. Submit the form deliberately causing errors by leaving one or more mandatory fields or entering invalid data,

When invalid data is entered in fields verify that the screen reader conveys the data that was flagged as invalid to the user.

  1. Identify incomplete fields: Provide text descriptions that are read by the screen reader that identify required fields that were not completed.
  2. User input: Provide a text description that is read by the screen reader when user input falls outside the required format or values.

Appendix 1: Screen Reader usage information for Web

Navigation can be made faster and easier on a Web page by using short-cuts and quick navigation keys. Operating systems, products, Web pages, and screen readers may assign short-cuts to help the end users interact more easily. Study the short-cuts and navigation keys and perform the tasks that are anticipated by the end user.

HTML tables

Practice navigating accessible tables to understand how the screen reader interacts with tables. Some screen readers detect only data tables and indicate that a table contains x number of columns and y number of rows when the table is entered. The screen reader should give a verbal indication when the end of a table is reached. If tables are nested the screen reader should announce the nesting level of each table. The screen reader should provide commands that allow navigation within tables, and from one table to another, as well as get information about the position of table cells and the structure of tables on a page. Some screen readers provide a table navigation mode with commands to navigate the table. For a complete list of commands for table navigation consult the documentation provided with the screen reader. Note: The screen reader may not identify row or column headers when navigating tables using standard reading commands or simple navigation. It is best to use the table navigation in the manner designed by the screen reader.

Layout Tables: Obtaining information about layout tables may provide a better understanding of the structure of a page. For some screen readers, there might be a configuration setting to cause the screen reader to provide information about layout tables. For example, set Layout Tables to 'On' in the Adjust JAWS Verbosity Dialog.

General navigation commands

Before beginning the test, we recommend filling in the following table of general navigation commands for your specific screen reader. The commands listed here are based on the Microsoft® Windows® operating system using Internet Explorer as the browser.

Description

Commands

Screen Reader to Stop Speaking

Back a Page

Alt+Left Arrow or Backspace

Forward a Page

Alt+Right Arrow

Move to Address Bar

Alt+D

Move to next object; Move to previous object

Tab; Shift+Tab

Activate link

Enter key or Space bar

Go through drop down list of items

Arrow down, arrow up

List Tables

List Forms Fields

List Headings

List Links

List Frames

Top of Page

Ctrl+Home

Virtual Find

Ctrl+F


Appendix 2: Document change summary

  1. Version 1.0 - September 1, 2009. Version 1.0 created to address Web checklist version 5.1

W3C Recommendation 11 December 2008: http://www.w3.org/TR/WCAG20/
Copyright 1994-2009 W3C (Massachusetts Institute of Technology, European Research Consortium for Informatics and Mathematics, Keio University), All Rights Reserved.

®2009 IBM Corporation

Last updated September 1, 2009.