FastPass in Accessibility Insights for Android

What is FastPass?

FastPass is a lightweight, two-step process that helps developers identify common, high-impact accessibility issues in less than five minutes.

  1. Automated checks - the tool automatically checks for several programmatically-detectable accessibility issues, such as low contrast, missing accessible names, or inadequate touch target sizes. The rules are based on axe-android, an open source accessibility rules library developed by Deque Systems.
  2. Manual test for tab stops - the tool provides clear instructions and a visual helper that makes it easy to identify critical accessibility issues related to keyboard access, such as missing tab stops, keyboard traps, and incorrect tab order.

We recommend developers run a FastPass before every check-in of UI code.

Notes:

  • Completing a FastPass requires you to use standard keyboard commands and to visually identify interactive interface elements.
  • Automated checks can detect some common accessibility problems such as missing or invalid properties. But most accessibility problems can only be discovered through manual testing. The best way to evaluate web accessibility compliance is to complete an assessment.

How to complete a FastPass

Run automated checks

These instructions assume you have already set up Accessibility Insights for Android on your computer and test device.

  1. Connect your computer to your device.

  2. On your Android device:

    1. Launch your test app.
    2. Navigate to the first screen you want to test.
  3. On your computer:

    1. Launch Accessibility Insights for Android.
    2. When the screen says Connected and ready to go!, select Start testing.

Screenshot of Accessibility Insights for Android. Options are rescan devices, cancel, or start testing.

Results

When the automated checks have completed, results are displayed in a new window. The window shows:

  • The navigation pane, with Automated checks selected
  • The total number of failed instances
  • A list of any accessibility rules that were violated
  • The number of failed instances for each rule
  • A screenshot of the target app, with any failed instances highlighted

Screen shows automated checks with three failed instances.

Rules

A rule can be expanded to show information about its failed instances. Rules can be expanded or collapsed:

  • All at once by selecting Expand all / Collapse all
  • Individually by clicking a rule, or by tabbing to it and pressing Enter

Expanding a rule:

  • Shows links to additional information about the rule, including why it matters, examples, and detailed instructions for fixing
  • Highlights its failed instances in the screenshot
  • Shows the failed instances in a list

Screen shows user clicking the collapse all button to collapse all three failed instances in the automated check.

Visual helper

The Visual helper toggle allows you to quickly show or hide failure instance highlighting in the screenshot.

Failed instances

Each failed instance includes:

  • The class name of the element that failed
  • How to fix the detected issue
  • Additional information to help identify the element (some rules only)

Selecting a failed instance highlights it in the screenshot. An instance can be selected or deselected by clicking it, or by tabbing to it and pressing Enter. You can select multiple instances.

Screen shows user clicking a failed instance from the automated checks. A red box highlights the corresponding section on the target app screenshot.

Complete the manual test for tab stops

The Tab stops test can be completed on a virtual or physical device using the virtual keyboard built into Accessibility Insights for Android. However, you can use a physical keyboard if you prefer.

  • If you're testing on a physical device, you can use a Bluetooth keyboard attached directly to your physical device.
  • If you're testing on a virtual device, you can use the keyboard attached to your desktop computer. To complete the Tab stops test:
  1. In the navigation pane, select Tab stops.

    Accessibility Insights for Android will show:

    • The navigation pane, with Tab stops selected
    • A Show tab stops toggle (off by default)
    • How to test instructions
    • A virtual keyboard with only the keys needed to complete the test (Tab, Up, Down, Left, Right, and Enter)

Screenshot shows the user clicking the tab stops test from the navigation menu.

  1. In your target app, navigate to the screen you want to test, and make sure the UI is in the correct start state. For example, you might want to test the UI with the focus in its default state.
  2. Turn on the Show tab stops toggle. In the target app, if an element has input focus, it will be highlighted by an empty circle.

Screenshot shows the user clicking the tab stops toggle from on to off.

  1. If you're testing on a virtual device, switch to the emulator app by pressing Alt+Tab (Windows or Linux) or Command+Tab (Mac).
  2. Use the virtual keyboard in Accessibility Insights (or a physical keyboard) to navigate through your app:
    1. First navigate linearly through all the interactive elements using only the Tab key.
    2. Then navigate to each interactive element and use the arrow keys to navigate away in each direction (up/down/left/right). In the target app, numbered circles will appear on elements that receive input focus.

Screen shows the user clicking the tab virtual keyboard. On the target app, a number 1 appears on the first tab stop and it draws a line to a number 2, the second tab stop.

  1. As you navigate to each element, look for these accessibility problems:
    • An interactive element can't be reached using the Tab and arrow keys.
    • An interactive element "traps" input focus and prevents navigating away.
    • An interactive element doesn't give a visible indication when it has input focus.
    • The navigation order is inconsistent with the logical order that's communicated visually.
    • Input focus moves unexpectedly without the user initiating it.

Optional: Evaluate instances that need review

Sometimes an automated check encounters an element coded in a way that it can't be evaluated automatically. For example, the color-contrast rule can't determine the contrast ratio of text that's superimposed on an image or gradient. Such instances need to be reviewed by a human to determine whether they pass or fail.

  1. In the navigation pane, select Needs review. The window will show:
    • The navigation pane, with Needs review selected
    • The total number of instances that need review
    • A list of any accessibility rules that might be violated
    • The number of instances for each rule
    • A screenshot of the target app, with any instances to review highlighted
  2. Expand a rule to see its instances.
  3. To determine whether an instance passes or fails, follow the How to check instructions.

Screen shows the user clicking the needs review test from the navigation.

File an issue

Each failed instance in Automated checks and Needs review has a disclosure button that reveals more actions.

  1. You can file an issue in your GitHub or Azure Boards repository.
  2. You can copy the failure details to your clipboard and paste them into the tool or document of your choice. Learn more about issue filing.

Screen shows the user click the more actions button from a failed instance. The options are to file an issue or copy failure details.

Share a detailed report of the automated checks

  1. In the navigation pane, select Automated checks.
  2. In the command bar, select Export result.
  3. Optional: Enter a description to include in the report.
  4. Select Export.
  5. Select the folder where you'd like to save the report.
  6. Select Save.

Screen shows a modal with a textarea to provide result details for the failed instance.

Start over

The Start over button, also in the command bar, allows you to quickly run the automated checks on whatever content is currently visible on your connected device.

Screen shows the user clicking the start over button.