Notice: This is a work in progress. Please submit feedback or suggestions.

Test: Basic html file input test

Screen Reader support level: partial (16/40)

Voice Control support level: partial (6/9)

On this page

About this test

A basic html file input test.

Run this test and and submit your results

Age of results

Results in this test range from 2 months ago to 5 months ago. See detailed information about test dates and versions for more information.

Failing and partial results are between 5 months ago and 5 months ago.

Test HTML

open the test page

HTML source is too long to display here.

Summary of Screen Reader support by expectation

* means that some support is hidden behind settings

Summary of Voice Control support by expectation

ExpectationDragon Naturally SpeakingVoice Access (Android)Voice Control (iOS)Voice Control (MacOS)Windows Speech Recognition
ChromeChromeSafariSafariChrome
input[type="file"] element
MUST convey an appropriate namenonesupportedsupportednonesupported
MUST convey an appropriate rolenonesupportednot applicablesupportedsupported

* means that some support is hidden behind settings

Detailed support results by expectation

Expectation for the input[type="file"] element: convey an appropriate name

Rationale: A screen reader user needs to know what to enter.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Examples of assistive technologies support this expectation:

  • A screen reader will announce the name (label).
  • Voice control software will let the user say something like "click <name>" to activate the control.

Grading method: Just one of the listed commands must pass for the expectation to pass.

Notes: For form inputs - commands to read line by line (down and up arrows in most windows screen readers) will not always result in the name being explicitly conveyed when the virtual focus is moved to an input where the label is visually displayed and programmatically associated with the input. This is acceptable because the name is implied by the fact that it should be naturally found in the reading order. Some screen readers choose to not convey the name in these cases, likely in an effort to reduce verbosity.

This expectation is from the input[type="file"] element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenone
  • Result: (fail)
    • command: "Click <text>" (Activate item by name)
    • Output: command was not recognized
    • Command Notes: said "click upload an image"
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button, to activate press space bar"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "upload an image button"
JAWSIEpartial
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file upload, edit, browse..."
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button, to activate press space bar"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file upload, edit"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file upload, edit"
  • Result: (fail)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "browse ... button"
JAWSFirefoxpartial
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
    • Result Notes: implied by reading order
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file upload, edit, browse..."
  • Result: (fail)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
  • Result: (fail)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
  • Result: (pass)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "upload an image browse... button"
NarratorEdgepartial
  • Result: (fail)
    • command: Down arrow (Read next item (scan mode))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "operation timed out"
    • Result Notes: caused the browser to crash
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, enter name of file to upload, edit read only"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, enter name of file to upload, edit read only"
NVDAChromeyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button, upload an image"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: NVDA + F7 (Open Elements List)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "upload an image; button"
NVDAFirefoxpartial
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "clickable, upload an image, button, browse, no file selected"
  • Result: (fail)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button, no file selected"
  • Result: (fail)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
  • Result: (fail)
    • command: NVDA + F7 (Open Elements List)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "browse... button"
OrcaFirefoxpartial
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, clickable, push button, no file selected"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image"
  • Result: (fail)
    • command: Tab (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, push button"
  • Result: (pass)
    • command: alt + shift + f (Open list of form fields)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: in list of form controls as "upload an image; push button; browse..."
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: Swipe right (next control (correct item type must be selected))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
Voice Access (Android)Chromeyes
  • Result: (pass)
    • command: "Tap <text>" or just "<text>" (Activate item by name)
    • Output: input was activated
    • Command Notes: said "tap upload an image"
Voice Control (iOS)Safariyes
  • Result: (pass)
    • command: "Tap <text>" (Activate item by name)
    • Output: input was activated""
    • Command Notes: said "tap upload an image"
Voice Control (MacOS)Safarinone
  • Result: (fail)
    • command: "Click <text>" (Activate item by name)
    • Output: command was not recognized
    • Command Notes: said "click upload an image"
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, no file selected, button"
  • Result: (pass)
    • command: Swipe down (next form control (correct item type must be selected))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, no file selected, button"
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • command: VO + Right arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "no file selected, upload an image, file upload button"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "no file selected, upload an image, file upload button"
  • Result: (pass)
    • command: VO + Command + J (Next Form Control)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "no file selected, upload an image, file upload button"
  • Result: (pass)
    • command: VO + U (Open Rotor)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "no file selected Upload an image file upload button"
Windows Speech RecognitionChromeyes
  • Result: (pass)
    • command: "Click <text>" (Activate item by name)
    • Output: role was activated
    • Command Notes: said "click upload an image"

Extended Support for: input[type="file"] element: convey an appropriate name

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEunknown-
Dragon Naturally SpeakingFirefoxunknown-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxunknown-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromeunknown-
Voice Control (MacOS)Firefoxunknown-
Windows Speech Recognition 1903Edge 44yes
  • Result: (pass)
    • command: "Click <text>" (Activate item by name)
    • Output: role was activated
    • Command Notes: said "click upload an image"
Back to top

Expectation for the input[type="file"] element: convey an appropriate role

Rationale: A screen reader user needs to know how they can interact with the element. Voice control software might use the role to help users activate controls that do not have a visible name.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Examples of assistive technologies support this expectation:

  • A screen reader might be announce the role as "text input", "edit", "edit file", etc.
  • Voice control software will let the user say something like "click text box" to focus a the input or flag the role with a number.

Grading method: Just one of the listed commands must pass for the expectation to pass.

This expectation is from the input[type="file"] element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenone
  • Result: (fail)
    • command: Click <role> (Click Type)
    • Output: command was not recognized
    • Command Notes: said "click edit"
  • Result: (fail)
    • command: Click <role> (Click Type)
    • Output: command was not recognized
    • Command Notes: said "click edit"
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button, to activate press space bar"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "upload an image button"
JAWSIEyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file upload, edit, browse..."
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button, to activate press space bar"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file upload, edit"
  • Result: (pass)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "browse ... button"
JAWSFirefoxyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file upload, edit, browse..."
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
  • Result: (pass)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "upload an image browse... button"
NarratorEdgepartial
  • Result: (fail)
    • command: Down arrow (Read next item (scan mode))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "operation timed out"
    • Result Notes: caused the browser to crash
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, enter name of file to upload, edit read only"
NVDAChromeyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button, upload an image"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: NVDA + F7 (Open Elements List)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "upload an image; button"
NVDAFirefoxyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "clickable, upload an image, button, browse, no file selected"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button, no file selected"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
  • Result: (pass)
    • command: NVDA + F7 (Open Elements List)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "browse... button"
OrcaFirefoxpartial
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, clickable, push button, no file selected"
  • Result: (fail)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image"
  • Result: (pass)
    • command: Tab (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, push button"
    • Result Notes: name was not conveyed
  • Result: (pass)
    • command: alt + shift + f (Open list of form fields)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: in list of form controls as "upload an image; push button; browse..."
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: Swipe right (next control (correct item type must be selected))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
Voice Access (Android)Chromeyes
  • Result: (pass)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: input was flagged with a number
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safariyes
  • Result: (pass)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: input was flagged with a number
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, no file selected, button"
  • Result: (pass)
    • command: Swipe down (next form control (correct item type must be selected))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, no file selected, button"
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • command: VO + Right arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "no file selected, upload an image, file upload button"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "no file selected, upload an image, file upload button"
  • Result: (pass)
    • command: VO + Command + J (Next Form Control)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "no file selected, upload an image, file upload button"
  • Result: (pass)
    • command: VO + U (Open Rotor)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "no file selected Upload an image file upload button"
Windows Speech RecognitionChromeyes
  • Result: (pass)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: role was flagged with a number
    • Command Notes: said "show numbers"

Extended Support for: input[type="file"] element: convey an appropriate role

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEunknown-
Dragon Naturally SpeakingFirefoxunknown-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxunknown-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromeunknown-
Voice Control (MacOS)Firefoxunknown-
Windows Speech Recognition 1903Edge 44yes
  • Result: (pass)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: role was flagged with a number
    • Command Notes: said "show numbers"
Back to top

Expectation for the input[type="file"] element: convey the current value

Rationale: A screen reader user needs to know the current value of the input.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Grading method: Just one of the listed commands must pass for the expectation to pass.

This expectation is from the input[type="file"] element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromenone
  • Result: (fail)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (fail)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button, to activate press space bar"
  • Result: (fail)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (fail)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "upload an image button"
JAWSIEpartial
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file upload, edit, browse..."
  • Result: (fail)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button, to activate press space bar"
  • Result: (fail)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file upload, edit"
  • Result: (fail)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "browse ... button"
JAWSFirefoxpartial
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
    • Result Notes: the value is a separate item from the button in reading mode
  • Result: (fail)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file upload, edit, browse..."
  • Result: (fail)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
  • Result: (fail)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "upload an image browse... button"
NarratorEdgenone
  • Result: (fail)
    • command: Down arrow (Read next item (scan mode))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "operation timed out"
    • Result Notes: caused the browser to crash
  • Result: (fail)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file"
  • Result: (fail)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, enter name of file to upload, edit read only"
NVDAChromenone
  • Result: (fail)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button, upload an image"
  • Result: (fail)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (fail)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (fail)
    • command: NVDA + F7 (Open Elements List)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "upload an image; button"
NVDAFirefoxpartial
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "clickable, upload an image, button, browse, no file selected"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button, no file selected"
  • Result: (fail)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
  • Result: (fail)
    • command: NVDA + F7 (Open Elements List)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "browse... button"
OrcaFirefoxpartial
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, clickable, push button, no file selected"
  • Result: (fail)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image"
  • Result: (fail)
    • command: Tab (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, push button"
    • Result Notes: name was not conveyed
  • Result: (fail)
    • command: alt + shift + f (Open list of form fields)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: in list of form controls as "upload an image; push button; browse..."
TalkBackChromenone
  • Result: (fail)
    • command: Swipe right (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (fail)
    • command: Swipe right (next control (correct item type must be selected))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, no file selected, button"
  • Result: (pass)
    • command: Swipe down (next form control (correct item type must be selected))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, no file selected, button"
VoiceOver (macOS)Safaripartial
  • Result: (pass)
    • command: VO + Right arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "no file selected, upload an image, file upload button"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "no file selected, upload an image, file upload button"
  • Result: (fail)
    • command: VO + Command + J (Next Form Control)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "no file selected, upload an image, file upload button"
  • Result: (pass)
    • command: VO + U (Open Rotor)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "no file selected Upload an image file upload button"
Windows Speech RecognitionChromenot applicable-

Extended Support for: input[type="file"] element: convey the current value

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEnot applicable-
Dragon Naturally SpeakingFirefoxnot applicable-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable-
Back to top

Expectation for the input[type="file"] element: convey changes in value

Rationale: The user needs to know that the value was successfully changed.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Examples of assistive technologies support this expectation:

  • When the user enter texts, the screen reader will announce it back to them.

Grading method: All of the listed commands must pass for the expectation to pass.

This expectation is from the input[type="file"] element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromenone
  • Result: (fail)
    • command: Enter or Space (Activate Button)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: announced the file input control without the current value
    • Result Notes: the selected a file from the prompt and activated the button to open the file
JAWSIEyes
  • Result: (pass)
    • command: Enter or Space (Activate Button)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: announced the file input control with the current value
    • Result Notes: the selected a file from the prompt and activated the button to open the file
JAWSFirefoxnone
  • Result: (fail)
    • command: Enter or Space (Activate Button)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: announced the title of the window
    • Result Notes: the selected a file from the prompt and activated the button to open the file
NarratorEdgenone
  • Result: (fail)
    • command: Enter or Space Bar (Activate Item (primary action))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: nothing was announced
    • Result Notes: the selected a file from the prompt and activated the button to open the file
NVDAChromenone
  • Result: (fail)
    • command: Enter or Space (Activate Button)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: the window title was announced
    • Result Notes: the selected a file from the prompt and activated the button to open the file
NVDAFirefoxnone
  • Result: (fail)
    • command: Enter or Space (Activate Button)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: the window title was announced
    • Result Notes: the selected a file from the prompt and activated the button to open the file
OrcaFirefoxnone
  • Result: (fail)
    • command: Enter or Space (Activate Button)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: the input was announced without the value
TalkBackChromenone
  • Result: (fail)
    • command: double tap (Activate button)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: input was announced without the value
    • Result Notes: took a picture and used that for the file
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safarinone
  • Result: (fail)
    • command: Double tap (Activate Button)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: focus was lost and sent to the formatting options button at the top of safari, no indication of value was conveyed
    • Result Notes: took a picture and used that for the file
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • command: Enter or Space (Activate Button)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: input was focused with new value conveyed
Windows Speech RecognitionChromenot applicable-

Extended Support for: input[type="file"] element: convey changes in value

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEnot applicable-
Dragon Naturally SpeakingFirefoxnot applicable-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable-
Back to top

Expectation for the input[type="file"] element: provide shortcuts to jump to this role

Rationale: Screen reader users might want to quickly navigate to elements of this type.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: SHOULD
  • Voice Control: NA

Grading method: Just one of the listed commands must pass for the expectation to pass.

This expectation is from the input[type="file"] element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromeyes
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "upload an image button"
JAWSIEyes
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, file upload, edit"
  • Result: (pass)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "browse ... button"
JAWSFirefoxyes
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
  • Result: (pass)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "upload an image browse... button"
NarratorEdgeyes
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, enter name of file to upload, edit read only"
NVDAChromeyes
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
  • Result: (pass)
    • command: NVDA + F7 (Open Elements List)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "upload an image; button"
NVDAFirefoxyes
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, button"
  • Result: (pass)
    • command: NVDA + F7 (Open Elements List)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form fields as "browse... button"
OrcaFirefoxyes
  • Result: (pass)
    • command: Tab (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "browse, push button"
    • Result Notes: name was not conveyed
  • Result: (pass)
    • command: alt + shift + f (Open list of form fields)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: in list of form controls as "upload an image; push button; browse..."
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (next control (correct item type must be selected))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, button"
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Swipe down (next form control (correct item type must be selected))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "upload an image, no file selected, button"
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • command: VO + Command + J (Next Form Control)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "no file selected, upload an image, file upload button"
  • Result: (pass)
    • command: VO + U (Open Rotor)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: in list of form controls as "no file selected Upload an image file upload button"
Windows Speech RecognitionChromenot applicable-

Extended Support for: input[type="file"] element: provide shortcuts to jump to this role

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEnot applicable-
Dragon Naturally SpeakingFirefoxnot applicable-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable-
Back to top

Dates and Versions of tested combinations

ATAT VersionBrowserBrowser versionOS versionDate tested
Dragon Naturally Speaking15.30Chrome7719032019-10-16
JAWS2020.1912.11Chrome7919092020-01-28
JAWS2020.1912.11IE1119092020-01-28
JAWS2020.1912.11Firefox7219092020-01-28
Narrator1903Edge4419032019-10-16
NVDA2019.2.1Chrome7719032019-10-16
NVDA2019.2.1Firefox6919032019-10-16
Orca3.31.4Firefox69Ubuntu 19.042019-10-16
TalkBack7.3.0Chrome777.02019-10-16
Voice Access (Android)3.1Chrome777.02019-10-16
Voice Control (iOS)13.1.3Safari13.113.1.32019-10-16
Voice Control (MacOS)10.15Safari13.0.210.152019-10-16
VoiceOver (iOS)13.1.3Safari13.113.1.32019-10-16
VoiceOver (macOS)10.15Safari13.0.210.152019-10-16
Windows Speech Recognition1903Chrome7719032019-10-18

History

  • 2019-10-16 Test created
  • 2019-10-18 Add wsr results