How to Update axe DevTools Mobile Analyzer for iOS

Link to How to Update axe DevTools Mobile Analyzer for iOS copied to clipboard

Stay up to date with the latest version for comprehensive accessibility testing for iOS or iPadOS applications.

Free Trial

Updating axe DevTools Mobile Analyzer Components

Rule Engine (axeDevToolsXCUI Framework)

The axe DevTools Mobile Analyzer utilizes the axeDevToolsXCUI framework as the underlying rule engine. We recommend periodically updating the framework to ensure you have the latest rules and updates. It does not automatically update, so be sure to check for a new version in Xcode using the instructions below. We release updates to the axeDevToolsXCUI framework about once per month and communicate the release via email and the release notes page.

Xcode Project

We recommend updating the Xcode project only as needed. (Important updates will more often be made to the rule engine rather than the Xcode project itself.) We'll send an email announcement when a new version of the Xcode project is available, likely up to a few times per year. To view and download the latest version, see: Download axe DevTools Mobile Analyzer

Update to the Latest Version of the Rule Engine

Updating to the latest version of the rule engine is quick and easy. Open the axeDevToolsMobileAnalyzer project in Xcode and select 'File', then 'Packages'. Select 'Update to Latest Package Versions'. In the left navigation window, you'll briefly get a spinner letting you know it's downloading the latest version for you.

Note: By default, the Xcode project is referencing the 'main' branch of the axeDevTools XCUI framework as the underlying rule engine. If you have previously changed this configuration to use a specific tag or commit version (referenced below), please change the configuration for 'Package Dependencies' back to use the 'branch' option with 'main' to get the latest version of the rule engine.

Select a Specific Version of the Rule Engine

We recommend using the default configuration to ensure you're always using the latest version of the rule engine, and can quickly update using the method above.

If you are experiencing an issue with a specific version of the rule engine, or want to sync with a version your automated tests are using, you can change the version of the axeDevToolsXCUI framework using one of the methods below.

By Tag

Tags follow the format: x.x.x-XCUI where x.x.x represents the version number of the framework (ie: 2.7.0-XCUI).

  1. Navigate to the axe-devtools-ios release page and identify which version you'd like to use
  2. Make note of the version number, or, copy the tag value located left of the release notes
  3. Open the axeDevToolsMobileAnalyzer project in Xcode
  4. In the left pane, select the main axeDevToolsMobileAnalyzer project
  5. In the main pane, the project will again be selected with three tab options available at the top - 'Info', 'Build Settings', and 'Package Dependencies'
  6. Select 'Package Dependencies' and find the axeDevTools package listed
  7. Change the 'Dependency Rule' for axeDevTools to the 'Exact Version' option and paste the tag copied earlier. Note that you may need to fully expand Xcode to see the Dependency Rule section. Again, the tag should be in the format x.x.x-XCUI.

The packages will resolve themselves automatically and the tag will appear next to the axeDevTools package in the left pane of Xcode. You may also verify the version by following the steps above.

By Commit

  1. Navigate to the axe-devtools-ios commit page and identify which version you'd like to use
  2. On that commit, use the button on the right to copy the full SHA which identifies the commit associated with the version used
  3. Open the axeDevToolsMobileAnalyzer project in Xcode
  4. In the left pane, select the main axeDevToolsMobileAnalyzer project
  5. In the main pane, the project will again be selected with three tab options available at the top - 'Info', 'Build Settings', and 'Package Dependencies'
  6. Select 'Package Dependencies' and find the axeDevTools package listed
  7. Change the 'Dependency Rule' for axeDevTools to the 'Commit' option and paste the commit SHA that was copied from GitHub. Note that you may need to fully expand Xcode to see the Dependency Rule section.

The packages will resolve themselves automatically and the commit number will appear next to the axeDevTools package in the left pane of Xcode. You may also verify the version by following the steps below.

Check the Current Version of the Rule Engine

If you need to report a bug or are curious about which version of the rule engine you are running, follow the steps below to find the version number of the axeDevToolsXCUI framework being used.

  1. Open the axeDevToolsMobileAnalyzer project in Xcode
  2. In the left pane of Xcode, expand axeDevTools in the Package Dependencies section
  3. Right-click on the axeDevToolsXCUI framework and select 'Show in Finder'
  4. Expand the axeDevToolsXCUI.xcframework folder
  5. Open Info.plist
  6. 'Bundle version' will tell you which version of the framework is being used (it will be in the format of x.x.x)