Accessibility testing with Deque
Deque’s axe DevTools for Mobile enables automated accessibility testing for mobile apps using a custom Appium server implementation provided by Deque. Perfecto supports running Deque’s accessibility scans using this Deque Appium server.
Important considerations:
-
The Deque Appium server is not maintained by Perfecto and differs from the standard Appium server used in our environment.
-
As a result, existing Appium scripts written for Perfecto’s standard server may not be compatible with the Deque server.
-
To ensure a smooth testing experience, consider creating dedicated test scripts for use with the Deque Appium server.
On this page:
Implementation tips
-
Ensure your Appium tests are running on real devices supported by Perfecto.
-
Use the
scanNameparameter to label scans by test case, screen, or user flow for better traceability. -
Combine Deque scans with your existing test validations to ensure both functionality and accessibility.
Limitation
Accessibility testing with Deque is only available in Perfecto clouds with a macOS-based Handset Server (HSS).
Step 1: Configure Appium capabilities
To use Deque’s accessibility scanning, you must configure the automationName capability based on the platform:
where:
-
automationNamemust be set toAxeUiAutomator2to enable Deque’s accessibility driver. -
appPackageis the package name of the Android app under test (already used inUiAutomator2).
where:
-
automationNamemust be set toAxeXCUITestto enable Deque’s accessibility driver. -
bundleIdis the bundle identifier of the iOS app under test (already used in XCUITest).
Step 2: Run an Accessibility scan
When your test is running, you can trigger an accessibility scan using the mobile: axeScan command.
Example (JavaScript with WebDriver)
const axeSettings = {
apiKey: '<your-api-key-here>',
scanName: '<your-scan-name-here>' // Optional: Customize the scan name
};
const result = await driver.execute('mobile: axeScan', axeSettings);
where:
-
apiKeyis your Deque axe DevTools Mobile API key. -
scanName(optional) is a custom name for the scan to help identify it in the Deque Dashboard. If not set, the screen’s name or title will be used.
View results
Scans are uploaded to the Deque Dashboard, where you can review accessibility issues, filter by severity, and track improvements over time.