Skip to main content

Screen Reader Testing

Using a screen reader is very different than using a monitor and mouse. While testing with a screen reader, NEVER use a mouse, and rely ONLY on what you can hear (i.e., do not look at the screen to fill in gaps in what you're hearing). And do not make any custom setting changes other than to speech rate (and, for NVDA, “Highlight Navigator Object”).

Before testing, review the Screen Reader Guide, and only test if you are confident in your ability to use a screen reader as it would be used by someone with a disability.

Screen reader testing should be done in two passes: 

  1. Read through all content using Down Arrow, and 
  2. Read and operate all interactive elements using Tab key and other keyboard commands,

Follow these steps:

  1. Browse to the screen to be tested.
  2. Explore the screen to identify all content and functions of interactive elements.
  3. Start the screen reader.
  4. Click in the browser address bar and press Enter to reload the page; then set the mouse aside.
  5. Press Esc to make sure you’re not in Forms/Focus Mode.
  6. Press Ctrl + Home to read the page title (JAWS) or first line (NVDA).
  7. Press Down Arrow to read through all content.
  8. If you don’t hear something clearly, press Up Arrow and then Down Arrow to re-read it.
  9. If Forms/Focus Mode turns on (with a pop or chime), press Esc (once or twice) and then continue pressing Down Arrow
  10. For each line, check:
    • Text – any text displayed on the screen should be read (WCAG 1.1.1)
    • Headings – any text that is large and/or bold at the beginning of a section should be indicated as a “heading” of the appropriate level, e.g., “heading level 1” for the main heading, “heading level 2” for section headings, “heading level 3” for sub-section headings, etc.) (WCAG 1.3.1)
    • Lists – any text that has bullets, numbers, or otherwise looks like a list, should be indicated as a “list of x items” (WCAG 1.3.1)
    • Images – meaningful images should be indicated as a “graphic” followed by a concise statement of what the image communicates (not a description of what it looks like); If an image does not communicate anything (i.e., is decorative), should be not be read. (1.1.1)
    • Tables – anything that looks like a table of data should be indicated as a “table of x rows and y columns” or a “grid” (WCAG 1.3.1). If you encounter a table, test it by doing the following:
      • Press Ctrl + Alt + Right Arrow  – cell content and column number should be read. Repeat until end of row/edge of table.
      • Press Down Arrow – content of first cell in next row should be read. Repeat until in the first cell in the body of the table.
      • Press Ctrl + Alt + Right Arrow – column header(s), column number, and content of cell should be read. Repeat until end of row/edge of table.
      • Press Ctrl + Alt + Down Arrow – row header (optionally), row number, and content of cell should be read. Repeat until bottom of column/edge of table.
    • Order – all content should be read in a logical order, usually left to right, top to bottom within any sections or columns of the page (WCAG 1.3.2)
    • Note: wait until pass 2 to test links & form fields.

After reading the entire page, go back to the top check all interactive elements using the Tab key:

  1. Press Ctrl + Home to read the title and/or first line.
  2. Press the Tab key to move to and read the next interactive element.
  3. If you don’t hear something clearly, press Insert + Tab to re-read it.
  4. For each interactive element, check: 
    • Links – links should be indicated as “link” (or “visited link” or “same page link”) with text that clearly and uniquely indicates the destination or purpose of the link (WCAG 2.4.3)
    • Form Fields – name, role value, and state should be indicated. Use standard keyboard commands to ensure that all elements of compound widgets are clearly identified and operable (WCAG 4.1.2)
      • Textbox – [label] Edit [value?] [multiline?] [readonly?]
      • Dropdown – [label] Combobox [value] [collapsed/expanded]
      • Listbox - [label] List [item x of y]
      • Checkbox – [label] Checkbox [checked/not checked]
      • Radio button – [group label] Group [label] Radio Button [checked/not checked] [x of y]
      • Button – [label] Button
      • Other interactive elements – look up WAI-ARIA Roles, States, and Properties in the ARIA Authoring Practices Guide

Footer