User agent reliability for NVDA IE Screen reader compatibility

Last updated: September 5, 2016

Shows how well NVDA IE supports ARIA and WCAG sufficient techniques.

Failing tests

TestModeWhat the user hearsNotes
FailAPPLET with fallback contentReadingEmbedded objectFallback content not read, although it’s visible on screen, no indication of applet content.
FailAPPLET with ARIA-LABELLEDBY attributeReading Nothing Nothing voiced for applet - no indication it exists
FailEMBED with ARIA-LABELLEDBY attributeReadingEmbedded object, unnamed_view_0No description of non-text content.
FailOBJECT with fallback contentReadingEmbedded objectFallback content not read, no description of non-text content
FailOBJECT with ARIA-LABELLEDBY attributeReadingEmbedded objectNo description of non-text content
FailAUDIO with ARIA-LABEL attributeReading Nothing Nothing voiced for audio - no indication it exists
FailAUDIO with ARIA-LABELLEDBY attributeReading Nothing Nothing voiced for audio - no indication it exists
FailVIDEO with ARIA-LABELLEDBY attributeReadingVideoNothing voiced for video - no indication it exists
FailIFRAME with titleTabbingOne thousand two hundred and thirty four dot HTML, frame, this is an, example hyperlink, link, in the target page. Example hyperlink, link. Out of frame.Frame SRC URL gibberish is voiced if IFRAME has a non-empty title attribute
FailBUTTON wraps IMG with aria-labelledbyTabbingButtonNothing indicates button function
FailINPUT type=image with aria-labelledby attributeTabbingButtonReads «button» without saying what button does.
FailINPUT type=text with TITLE attributeReadingEditDoesn’t read title in Reading mode
FailINPUT type=text with aria-label attributeReadingEditDoesn’t read aria label in Reading mode
FailFIELDSET containing linksTabbingHome link. About link. Contact link.Legend not read when tabbing forward, but is read when shift-tabbing backwards.
FailIMG with aria-labelledbyReadingThis is an aria labelled byImage ignored
FailAREA with ALT attributeTabbing Nothing Complete silence when tabbing between AREAs.
FailAREA with TITLE attributeTabbing Nothing Complete silence when tabbing between AREAs.
FailAREA with aria-label attributeTabbing Nothing Complete silence when tabbing between AREAs.
FailAREA with aria-labelledby attributeReadingGraphic, this is alt text, link, link, this is left aria labelled by text, this is right aria labelled by textlink text blank, labels read out after links
FailAREA with aria-labelledby attributeTabbing Nothing Complete silence when tabbing between AREAs.
FailA «click here» link with TITLE attributeTabbingClick here, linktitle ignored
FailA «click here» link with aria-labelledby attributeTabbingClick here, linkaria labelled ignored
FailData table with role rowheader headers but no THReadingMorning. Afternoon. Free. Busy.Table treated as layout table - not announced as table, and no headers read.
FailData table with TH row/columns headers with SCOPEReading Table with 4 rows and 5 columns, contact information. Row 1, column 1. Column 2, name. Column 3, phone number. Column 4, fax number. Column 5, city. Row 2, column 1, one. Name, column 2, Joel Garner. Phone number, column 3, 412 212 5421. Fax number, column 4, 412 212 5400. City, column 5, Pittsburgh Column headers, but no row headers, announced for TD cells.
FailData table with TD HEADERS attributeReading Table with 3 rows and 7 columns, row 1 column 1, homework. Column 2, exams. Column 5, projects. Row 2, exams, column 2, one. Exams, column 3, two. Exams, column 4, final. Projects, column 5, one. Projects, column 6, two. Projects, column 7, final. Homework, row 3, homework, column 1, fifteen percent. Exams, column 2, fifteen percent. Exams, column 3, fifteen percent. Exams, column 4, twenty percent. Projects, column 5, ten percent. Projects, column 6, ten percent. Projects, column 7, fifteen percent. Only first row TH read, table structure incomprehensible.

Passing tests

TestModeWhat the user hearsNotes
PassARIA role=headingHeadingFirst level heading, heading level 1. Second level heading, heading level 2.
PassHeading is IMG with ALTHeadingSecond level alt, graphic heading level 2.
PassAPPLET with ARIA-LABEL attributeReadingEmbedded object, ARIA label for applet
PassAPPLET inside FIGURE with FIGCAPTION elementReadingEmbedded object. Figure caption for appletFIGCAPTION is read out.
PassEMBED inside FIGURE with FIGCAPTIONReadingEmbedded object, unnamed_view_0. Figure caption for embed.Reads out FIGCAPTION
PassEMBED with ARIA-LABEL attributeReadingEmbedded object, ARIA label for embed.
PassOBJECT with ARIA-LABEL attributeReadingEmbedded object, ARIA label for objectVoices ARIA-LABEL attribute
PassVIDEO with ARIA-LABEL attributeReadingVideo aria label
PassIFRAME with fallback contentReadingFrame, this is an, link, example hyperlink in the target page. Out of frame.IFRAME alternative content ignored, and doesn’t appear in the DOM.
PassIFRAME with fallback contentTabbingFrame, this is an, example hyperlink, link, in the target page. Example hyperlink, link. Out of frame.Fallback content is ignored
PassIFRAME with titleReadingFrame, this is an, link, example hyperlink in the target page. Out of frame.IFRAME title ignored.
PassABBR with titleReadingEt cetera
PassBUTTON wraps only an IMG with an ALT attributeReadingButton graphic, this is image alt
PassBUTTON wraps only an IMG with an ALT attributeTabbingThis is image alt, graphic button
PassBUTTON wraps IMG with TITLE attributeReadingButton graphic, this is image title
PassBUTTON wraps IMG with TITLE attributeTabbingThis is image title, graphic button
PassBUTTON wraps IMG with aria-labelReadingButton graphic, this is image aria label
PassBUTTON wraps IMG with aria-labelTabbingThis is image aria label, graphic button
PassBUTTON wraps IMG with aria-labelledbyReadingButton, this is an aria labelled by
PassBUTTON with TITLE wraps IMG with null ALTReadingButton, this is button title
PassBUTTON with TITLE wraps IMG with null ALTTabbingThis is button title, button
PassBUTTON with aria-label wraps IMG with null ALTReadingButton, this is button aria label
PassBUTTON with aria-label wraps IMG with null ALTTabbingThis is button aria label, button
PassINPUT type=image with ALT attributeReadingButton, this is image button alt text
PassINPUT type=image with ALT attributeTabbingThis is image button alt text, button
PassINPUT type=image with TITLE attributeReadingButton, this is image button title text
PassINPUT type=image with TITLE attributeTabbingThis is image button title text, button
PassINPUT type=image with aria-label attributeReadingButton, this is image button aria label text
PassINPUT type=image with aria-label attributeTabbingThis is image button aria label text, button
PassINPUT type=image with aria-labelledby attributeReadingButton, this is image button aria labelled by text
PassINPUT type=text with aria-describedby attributeReadingFirst name, edit, a bit of instructions for this field linked with aria describedby
PassINPUT type=text with aria-describedby attributeTabbingFirst name, edit, a bit of instructions for this field linked with aria describedby, blank
PassINPUT type=text with TITLE attributeTabbingEnter search text, edit, blank
PassINPUT type=text with aria-label attributeTabbingEnter search text, edit, blank
PassINPUT type=text with aria-labelledby attributeReadingEnter search text, edit
PassINPUT type=text with aria-labelledby attributeTabbingEnter search text, edit, blank
PassINPUT type=text with LABEL FORReadingEnter search text, edit
PassINPUT type=text with LABEL FORTabbingEnter search text, edit, blank
PassINPUT type=text inside LABEL with text before controlReadingEnter search text, edit
PassINPUT type=text inside LABEL with text before controlTabbingEnter search text, edit, blank
PassINPUT type=text inside LABEL with text after controlReadingEdit, enter search text
PassINPUT type=text inside LABEL with text after controlTabbingEnter search text, edit, blank
PassINPUT type=text inside LABEL with text before and after controlReadingEnter search text, edit, blanks not allowed
PassINPUT type=text inside LABEL with text before and after controlTabbingEnter search text, blanks not allowed, edit, blank
PassFIELDSET containing linksReadingLegend for enclosed links, link home, link about, link contact.
PassYes/No radio buttons inside FIELDSETReadingI agree to terms and conditions, radio button checked, yes, radio button not checked, no. Sign me up to the newsletter, radio button checked, yes, radio button not checked, no.
PassYes/No radio buttons inside FIELDSETTabbingI agree to terms and conditions grouping, yes radio button checked. Sign me up to the newsletter grouping, yes radio button checked.
PassIMG with null ALT attributeReading Nothing Ignored as expected
PassIMG with ALTReadingGraphic, this is alt text
PassIMG with FIGCAPTIONReadingViolet, taken on 12/11/2010
PassIMG with TITLEReadingGraphic, this is title text
PassIMG with aria-labelReadingGraphic, this is an aria label
PassAREA with ALT attributeReadingGraphic, areas in the library. Graphic, select an area for more information on that area, link reference, link audio visual lab.
PassAREA with TITLE attributeReadingGraphic, this is alt text, link, this is left title text, link, this is right title text
PassAREA with aria-label attributeReadingGraphic, this is alt text, link, this is left aria label text, link, this is right aria label text
PassA link wraps IMG with ALTReadingLink graphic, this is a link alt
PassA link wraps IMG with ALTTabbingThis is a link alt, graphic link
PassA link wraps IMG with TITLEReadingLink graphic, this is an image title
PassA link wraps IMG with TITLETabbingThis is an image title, graphic link
PassA «click here» link with TITLE attributeReadingLink, click here
PassA «click here» link with aria-label attributeReadingLink, this is an aria label
PassA «click here» link with aria-label attributeTabbingThis is an aria label, link
PassA «click here» link with aria-labelledby attributeReadingLink click here, this is an aria labelled by
PassA «click here» link with aria-describedby attributeReadingLink click here, this is an aria described by
PassA «click here» link with aria-describedby attributeTabbingClick here link, this is an aria described by
PassLayout table with single cellReadingThis is some text.Treated as a layout table.
PassLayout table with role presentationReadingExample. Navigation. Links. Content.Table treated as layout table - not announced as table.
PassData table with role gridReadingTable with two rows and two columns, row one column one, morning. Column two afternoon. Row two, morning, column one, free. Afternoon, column two, busy.
PassData table with SUMMARY and THReadingTable with two rows and two columns, data table summary. Row one column one, morning. Column two afternoon. Row two, morning, column one, free. Afternoon, column two, busy.
PassData table with CAPTION and THReadingTable with two rows and two columns, data table caption. Row one column one, morning. Column two afternoon. Row two, morning, column one, free. Afternoon, column two, busy.
PassData table with TH cell headersReadingTable with two rows and two columns, row one, column one, morning. Column two, afternoon. Row two, morning, column one, free. Afternoon, column two, busy.