From cd2fdbcd88b630121e58defa86e70a2b529f4f86 Mon Sep 17 00:00:00 2001 From: Mootaz Bahri Date: Mon, 18 Nov 2024 17:29:37 +0100 Subject: [PATCH 01/13] Document appium deque integration using the axe devtools for mobile --- .../appium/appium-2-deque-drivers.md | 46 +++++++++++++++++++ .../appium/appium-versions.md | 20 ++++++-- sidebars.js | 1 + 3 files changed, 62 insertions(+), 5 deletions(-) create mode 100644 docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md new file mode 100644 index 0000000000..631a15a08d --- /dev/null +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -0,0 +1,46 @@ +--- +id: appium-deque-drivers +title: Deque axe DevTools® Mobile Analyzer Accessibility Drivers +sidebar_label: Appium Deque axe DevTools Integration +description: Learn how to run accessibility tests using axe DevTools® Mobile Analyzer drivers hosted in Sauce Labs' private cloud. +--- + +import useBaseUrl from '@docusaurus/useBaseUrl'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +

Real Devices

+ +[Deque's axe™](https://www.deque.com/axe/) is a leading digital accessibility toolkit. +The [axe DevTools® for Mobile SDK](https://docs.deque.com/devtools-mobile/appium) extends this functionality to mobile platforms, +allowing you to integrate automated accessibility testing directly into your Appium workflows. +With this SDK, you can scan mobile app content, identify accessibility issues, and improve compliance with accessibility standards. + +The following guide explains how to set up the Sauce Labs integration with [axe DevTools® for Mobile](https://docs.deque.com/devtools-mobile/appium). +This integration enables you to run mobile accessibility tests securely and efficiently using Sauce Labs' private cloud infrastructure. + +## What You'll Need + +- A Sauce Labs account ([Log in](https://accounts.saucelabs.com/am/XUI/#login/) or sign up for a [free trial license](https://saucelabs.com/sign-up)) +- Your Sauce Labs [Username and Access Key](https://app.saucelabs.com/user-settings) +- Familiarity writing and running [Appium tests](/mobile-apps/automated-testing/appium/) +- [A Deque Account](https://axe.deque.com/plans) (axe DevTools® for Mobile Product is required) + + +## Appium 2 Version: `appium2-deque-accessibility` + +Sauce Labs offers various versions of Appium 2 in our private cloud. One of these is the `appium2-deque-accessibility` version, +designed to support accessibility testing on mobile apps for both iOS and Android. This version integrates Appium drivers developed by +the Deque team, enabling seamless integration of accessibility scans into your existing test automation workflows. + +You can find more details on Sauce Labs' [Appium versions documentation](/mobile-apps/automated-testing/appium/appium-versions/#appium-2x). + +## Key Features of `appium2-deque-accessibility` +- ****Includes Deque Drivers :**** This version incorporates the following accessibility drivers developed by Deque: + - [axe-appium-xcuitest-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeXCUITEST` + - [axe-appium-uiautomator2-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeUIAutomator2` +- ****Backward Compatibility with Deprecated Plugin:**** While Deque’s [axeDevToolsMobile Appium Plugin](https://docs.deque.com/devtools-mobile/2024.2.14/en/june-2024-3) +has been deprecated, Sauce Labs will continue hosting it until January 31st, allowing users time to migrate to the new drivers. +- ****Powered by Appium :**** This version is built on version [2.12.1](https://github.com/appium/appium/releases/tag/appium%402.12.1) of appium, +ensuring the latest Appium features and compatibility enhancements. + diff --git a/docs/mobile-apps/automated-testing/appium/appium-versions.md b/docs/mobile-apps/automated-testing/appium/appium-versions.md index 8ac028de85..86ded74136 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-versions.md +++ b/docs/mobile-apps/automated-testing/appium/appium-versions.md @@ -157,7 +157,7 @@ The current end-of-life strategy outlined above is specific to Real Devices. We :::info Supported Custom Appium Plugins: The following list of custom Appium plugins are supported: - [Appium Images Plugin](https://www.npmjs.com/package/@appium/images-plugin). This plugin will now be included by default with Appium version `latest` and all subsequent versions released after April 1st. -- [Deque axe DevTools® Mobile Analyzer Accessibility plugin](https://docs.deque.com/devtools-mobile/appium). This plugin helps you with automated accessibility testing. Empower your team to focus on identifying and resolving accessibility issues. Requires Deque axe DevTools® Mobile license. +- [Deque axe DevTools® Mobile Analyzer Accessibility plugin](https://docs.deque.com/devtools-mobile/appium). This plugin helps you with automated accessibility testing. Empower your team to focus on identifying and resolving accessibility issues. Requires Deque axe DevTools® Mobile license. Deprecated ::: ### Appium 2.x @@ -171,7 +171,7 @@ The following list of custom Appium plugins are supported: - + stable @@ -260,12 +260,22 @@ The following list of custom Appium plugins are supported: diff --git a/sidebars.js b/sidebars.js index 03eb39a547..401284617e 100644 --- a/sidebars.js +++ b/sidebars.js @@ -1408,6 +1408,7 @@ module.exports = { 'mobile-apps/automated-testing/appium/test-app-upgrades', 'mobile-apps/automated-testing/appium/appium-flutter', 'mobile-apps/automated-testing/appium/appium-flutter-integration-driver', + 'mobile-apps/automated-testing/appium/appium-deque-drivers', ], }, { From ece3e9551060619f2c92c79d7cc4b6da5e6e8d81 Mon Sep 17 00:00:00 2001 From: Mootaz Bahri Date: Mon, 18 Nov 2024 20:06:44 +0100 Subject: [PATCH 02/13] Document appium deque integration using the axe devtools for mobile --- .../appium/appium-2-deque-drivers.md | 130 +++++++++++++++++- 1 file changed, 129 insertions(+), 1 deletion(-) diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md index 631a15a08d..a3801313e2 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -36,11 +36,139 @@ the Deque team, enabling seamless integration of accessibility scans into your e You can find more details on Sauce Labs' [Appium versions documentation](/mobile-apps/automated-testing/appium/appium-versions/#appium-2x). ## Key Features of `appium2-deque-accessibility` + - ****Includes Deque Drivers :**** This version incorporates the following accessibility drivers developed by Deque: - - [axe-appium-xcuitest-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeXCUITEST` - [axe-appium-uiautomator2-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeUIAutomator2` + - [axe-appium-xcuitest-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeXCUITEST` +:::info Min iOS Version for `axe-appium-xcuitest-driver`: +- You can use the `axe-appium-xcuitest-driver` only for devices with iOS 17 or above. + ::: - ****Backward Compatibility with Deprecated Plugin:**** While Deque’s [axeDevToolsMobile Appium Plugin](https://docs.deque.com/devtools-mobile/2024.2.14/en/june-2024-3) has been deprecated, Sauce Labs will continue hosting it until January 31st, allowing users time to migrate to the new drivers. - ****Powered by Appium :**** This version is built on version [2.12.1](https://github.com/appium/appium/releases/tag/appium%402.12.1) of appium, ensuring the latest Appium features and compatibility enhancements. +## How to Use `appium2-deque-accessibility` + +Follow these steps to set up and execute accessibility tests using the `appium2-deque-accessibility` image, leveraging Deque's Appium drivers for Android and iOS. + +1. Set Up Your Appium Capabilities + + + + + + +```js +const capabilities = { + platformName: 'Android', + 'appium:platformVersion': '1[0-9]', + 'appium:automationName': 'AxeUIAutomator2', // New Automation name goes here + 'appium:app': 'storage:filename=XXXXXXXXXx', + 'appium:appPackage': 'xxxxxxxxxx', + 'appium:autoGrantPermissions': true, + 'appium:autoAcceptAlerts': true, + 'appium:newCommandTimeout': 90, + 'sauce:options': { + name: "Android Driver - Testing appium2-deque-accessibility", + appiumVersion: 'appium2-deque-accessibility', + }, +} +``` + + + + +```js +const capabilities = { + platformName: 'iOS', + 'appium:platformVersion': '^1(7|8).*$', // The ios Drvier will work only on ios 17 devices and above + 'appium:automationName': 'AxeXCUITEST', // New Automation name goes here + 'appium:app': 'storage:filename=XXXXXXXXXx', + 'appium:appPackage': 'xxxxxxxxxx', + 'appium:autoGrantPermissions': true, + 'appium:autoAcceptAlerts': true, + 'appium:newCommandTimeout': 90, + 'sauce:options': { + name: "iOS Driver - Testing appium2-deque-accessibility", + resigningEnabled: true, + appiumVersion: 'appium2-deque-accessibility', + }, +} +``` + + + + +2. Obtain Your Deque API Key +Log in to your [axe Deque account setting page](https://axe.deque.com/settings) and retrieve your API key. +This key is required to authenticate and initiate accessibility scans during your tests. + +3. Prepare Your Testing Script +Once you have your API key, include it in your test script to perform a scan using the `mobile: axeScan` command. Below is an example script: + +```js +describe("Test appium2-deque-accessibility - Using Drivers Android/iOS", () => { + it('test appium2-deque-accessibility', async () => { + const apiKey = process.env.DEQUE_API_KEY; + const settings = { apiKey: apiKey } + + await driver.execute('mobile: axeScan', settings); + }); +}); +``` +## Migrating from the Deprecated `axeDevToolsMobile` Plugin to Deque Drivers + +Deque's axeDevToolsMobile Appium Plugin is deprecated and will no longer be supported after January 31st. Moving forward, +the following drivers should be used to ensure compatibility and continued support for accessibility testing: + +- Android: [axe-appium-uiautomator2-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeUIAutomator2` +- iOS : [axe-appium-xcuitest-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeXCUITEST` + +### Why Migrate? +- Continued Support: The plugin will no longer receive updates, fixes, or enhancements. +- Expanded Capabilities: The drivers offer better integration and updated functionalities for Android and iOS platforms. +- Compliance with Modern Requirements: For iOS, the new driver supports devices running iOS 17 and above. + +### Migration Steps +1. ****Update Your Appium Capabilities**** + +Replace the old plugin reference with the appropriate new driver. Choose the correct automationName based on your platform: + +Use `AxeUIAutomator2` for Android. +Use `AxeXCUITEST` for iOS. + +Additionally, specify the appiumVersion as `appium2-deque-accessibility`. + +```js +const capabilities = { + ..., + 'appium:automationName': 'AxeUIAutomator2', // For Android; use 'AxeXCUITEST' for iOS + ..., + 'sauce:options': { + ..., + appiumVersion: 'appium2-deque-accessibility', + }, +}; +``` +2. ****Update Your Testing Scripts**** +The `axe:Scan` command used with the ****deprecated**** plugin should now be replaced with the new `mobile: axeScan` command. + +This command works with the new drivers and requires the same API key setup. +```js +await driver.execute('mobile: axeScan', scanSettings); +``` + +## Additional Notes + +- Ensure your Appium server is correctly set up to use the `appium2-deque-accessibility` version. +- Validate that your app and environment meet the OS version requirements for the selected Deque drivers. +- For iOS, remember that the AxeXCUITEST driver only works on devices running iOS 17 or later. +- The axeDevToolsMobile plugin will remain available in the Sauce Labs private cloud until January 31st. +- Use the Deque [documentation](https://docs.deque.com/devtools-mobile/2024.2.14/en/appium-setup) for further driver-specific details. \ No newline at end of file From 659edde83ec4b9de604366deda28af0056ac5c96 Mon Sep 17 00:00:00 2001 From: bahrimootaz <105734428+bahrimootaz@users.noreply.github.com> Date: Mon, 18 Nov 2024 20:52:31 +0100 Subject: [PATCH 03/13] Update docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md Co-authored-by: Thiago Veronese <59449233+thiagosaucelabs@users.noreply.github.com> --- .../automated-testing/appium/appium-2-deque-drivers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md index a3801313e2..0ee227dfbe 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -17,7 +17,7 @@ allowing you to integrate automated accessibility testing directly into your App With this SDK, you can scan mobile app content, identify accessibility issues, and improve compliance with accessibility standards. The following guide explains how to set up the Sauce Labs integration with [axe DevTools® for Mobile](https://docs.deque.com/devtools-mobile/appium). -This integration enables you to run mobile accessibility tests securely and efficiently using Sauce Labs' private cloud infrastructure. +This integration enables you to run mobile accessibility tests securely and efficiently using Sauce Labs' cloud infrastructure. ## What You'll Need From fc02e348ab59d1e31b79d565b3b1af2f93d3ccd8 Mon Sep 17 00:00:00 2001 From: bahrimootaz <105734428+bahrimootaz@users.noreply.github.com> Date: Mon, 18 Nov 2024 20:52:38 +0100 Subject: [PATCH 04/13] Update docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md Co-authored-by: Thiago Veronese <59449233+thiagosaucelabs@users.noreply.github.com> --- .../automated-testing/appium/appium-2-deque-drivers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md index 0ee227dfbe..43b484dab9 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -29,7 +29,7 @@ This integration enables you to run mobile accessibility tests securely and effi ## Appium 2 Version: `appium2-deque-accessibility` -Sauce Labs offers various versions of Appium 2 in our private cloud. One of these is the `appium2-deque-accessibility` version, +Sauce Labs offers various versions of Appium 2 in our cloud. One of these is the `appium2-deque-accessibility` version, designed to support accessibility testing on mobile apps for both iOS and Android. This version integrates Appium drivers developed by the Deque team, enabling seamless integration of accessibility scans into your existing test automation workflows. From f639f1d366f64c1bd06ed610721835bede99e093 Mon Sep 17 00:00:00 2001 From: bahrimootaz <105734428+bahrimootaz@users.noreply.github.com> Date: Mon, 18 Nov 2024 20:52:43 +0100 Subject: [PATCH 05/13] Update docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md Co-authored-by: Thiago Veronese <59449233+thiagosaucelabs@users.noreply.github.com> --- .../automated-testing/appium/appium-2-deque-drivers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md index 43b484dab9..f4f95ae492 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -44,7 +44,7 @@ You can find more details on Sauce Labs' [Appium versions documentation](/mobile - You can use the `axe-appium-xcuitest-driver` only for devices with iOS 17 or above. ::: - ****Backward Compatibility with Deprecated Plugin:**** While Deque’s [axeDevToolsMobile Appium Plugin](https://docs.deque.com/devtools-mobile/2024.2.14/en/june-2024-3) -has been deprecated, Sauce Labs will continue hosting it until January 31st, allowing users time to migrate to the new drivers. +has been deprecated, Sauce Labs will continue hosting it until January 31st 2025, allowing users time to migrate to the new drivers. - ****Powered by Appium :**** This version is built on version [2.12.1](https://github.com/appium/appium/releases/tag/appium%402.12.1) of appium, ensuring the latest Appium features and compatibility enhancements. From ad23197d772b6fb279883523b0d6c0e36826ee03 Mon Sep 17 00:00:00 2001 From: bahrimootaz <105734428+bahrimootaz@users.noreply.github.com> Date: Mon, 18 Nov 2024 20:52:55 +0100 Subject: [PATCH 06/13] Update docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md Co-authored-by: Thiago Veronese <59449233+thiagosaucelabs@users.noreply.github.com> --- .../automated-testing/appium/appium-2-deque-drivers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md index f4f95ae492..61baa8849b 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -125,7 +125,7 @@ describe("Test appium2-deque-accessibility - Using Drivers Android/iOS", () => { ``` ## Migrating from the Deprecated `axeDevToolsMobile` Plugin to Deque Drivers -Deque's axeDevToolsMobile Appium Plugin is deprecated and will no longer be supported after January 31st. Moving forward, +Deque's axeDevToolsMobile Appium Plugin is deprecated and will no longer be supported after January 31st 2025. Moving forward, the following drivers should be used to ensure compatibility and continued support for accessibility testing: - Android: [axe-appium-uiautomator2-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeUIAutomator2` From 620172e6b8d830183de75d3e2a70fa89ce6ddeee Mon Sep 17 00:00:00 2001 From: bahrimootaz <105734428+bahrimootaz@users.noreply.github.com> Date: Mon, 18 Nov 2024 20:53:02 +0100 Subject: [PATCH 07/13] Update docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md Co-authored-by: Thiago Veronese <59449233+thiagosaucelabs@users.noreply.github.com> --- .../automated-testing/appium/appium-2-deque-drivers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md index 61baa8849b..9f1a8b9eea 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -37,7 +37,7 @@ You can find more details on Sauce Labs' [Appium versions documentation](/mobile ## Key Features of `appium2-deque-accessibility` -- ****Includes Deque Drivers :**** This version incorporates the following accessibility drivers developed by Deque: +- ****Includes Deque Drivers :**** This version incorporates the following accessibility drivers provided by Deque: - [axe-appium-uiautomator2-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeUIAutomator2` - [axe-appium-xcuitest-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeXCUITEST` :::info Min iOS Version for `axe-appium-xcuitest-driver`: From b5079dcdc6d4b4283a50be292085cab3f6c170dc Mon Sep 17 00:00:00 2001 From: bahrimootaz <105734428+bahrimootaz@users.noreply.github.com> Date: Mon, 18 Nov 2024 20:53:08 +0100 Subject: [PATCH 08/13] Update docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md Co-authored-by: Thiago Veronese <59449233+thiagosaucelabs@users.noreply.github.com> --- .../automated-testing/appium/appium-2-deque-drivers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md index 9f1a8b9eea..40708aca9a 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -170,5 +170,5 @@ await driver.execute('mobile: axeScan', scanSettings); - Ensure your Appium server is correctly set up to use the `appium2-deque-accessibility` version. - Validate that your app and environment meet the OS version requirements for the selected Deque drivers. - For iOS, remember that the AxeXCUITEST driver only works on devices running iOS 17 or later. -- The axeDevToolsMobile plugin will remain available in the Sauce Labs private cloud until January 31st. +- The axeDevToolsMobile plugin will remain available in the Sauce Labs cloud until January 31st 2025. - Use the Deque [documentation](https://docs.deque.com/devtools-mobile/2024.2.14/en/appium-setup) for further driver-specific details. \ No newline at end of file From e40159394b311ac04891d54e81736e58728e6f89 Mon Sep 17 00:00:00 2001 From: bahrimootaz <105734428+bahrimootaz@users.noreply.github.com> Date: Mon, 18 Nov 2024 20:53:14 +0100 Subject: [PATCH 09/13] Update docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md Co-authored-by: Thiago Veronese <59449233+thiagosaucelabs@users.noreply.github.com> --- .../automated-testing/appium/appium-2-deque-drivers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md index 40708aca9a..cb52e9fd9f 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -88,7 +88,7 @@ const capabilities = { ```js const capabilities = { platformName: 'iOS', - 'appium:platformVersion': '^1(7|8).*$', // The ios Drvier will work only on ios 17 devices and above + 'appium:platformVersion': '^1(7|8).*$', // The iOS driver will work only on devices running iOS 17 and above 'appium:automationName': 'AxeXCUITEST', // New Automation name goes here 'appium:app': 'storage:filename=XXXXXXXXXx', 'appium:appPackage': 'xxxxxxxxxx', From 76061d9c2f5a545c9eda7cd9430c7d7c3b8f9a17 Mon Sep 17 00:00:00 2001 From: Mootaz Bahri Date: Tue, 19 Nov 2024 10:48:22 +0100 Subject: [PATCH 10/13] Document appium deque integration using the axe devtools for mobile --- .../appium/appium-2-deque-drivers.md | 45 +++++++++++-------- sidebars.js | 2 +- 2 files changed, 28 insertions(+), 19 deletions(-) diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md index cb52e9fd9f..51f5d44937 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -1,7 +1,7 @@ --- -id: appium-deque-drivers -title: Deque axe DevTools® Mobile Analyzer Accessibility Drivers -sidebar_label: Appium Deque axe DevTools Integration +id: appium-deque-accessibility-testing +title: Accessibility Testing with Deque axe DevTools® Mobile Drivers +sidebar_label: Appium Deque axe DevTools Accessibility description: Learn how to run accessibility tests using axe DevTools® Mobile Analyzer drivers hosted in Sauce Labs' private cloud. --- @@ -13,11 +13,21 @@ import TabItem from '@theme/TabItem'; [Deque's axe™](https://www.deque.com/axe/) is a leading digital accessibility toolkit. The [axe DevTools® for Mobile SDK](https://docs.deque.com/devtools-mobile/appium) extends this functionality to mobile platforms, -allowing you to integrate automated accessibility testing directly into your Appium workflows. -With this SDK, you can scan mobile app content, identify accessibility issues, and improve compliance with accessibility standards. +enabling automated accessibility testing directly in your Appium workflows for both Android and iOS apps. +This feature supports compliance with accessibility standards such as WCAG and the European Accessibility Act, +ensuring your apps are inclusive for all users. + +With this integration, you can: + ++ Detect and address accessibility issues early in the development cycle. ++ Automate mobile accessibility testing using Sauce Labs' secure and scalable cloud infrastructure. ++ Gain actionable insights to improve compliance with global accessibility standards. + +The following guide explains how to set up Sauce Labs’ integration with [axe DevTools® for Mobile](https://docs.deque.com/devtools-mobile/appium) +and leverage its powerful tools to optimize accessibility testing in your mobile apps. + + -The following guide explains how to set up the Sauce Labs integration with [axe DevTools® for Mobile](https://docs.deque.com/devtools-mobile/appium). -This integration enables you to run mobile accessibility tests securely and efficiently using Sauce Labs' cloud infrastructure. ## What You'll Need @@ -38,15 +48,14 @@ You can find more details on Sauce Labs' [Appium versions documentation](/mobile ## Key Features of `appium2-deque-accessibility` - ****Includes Deque Drivers :**** This version incorporates the following accessibility drivers provided by Deque: - - [axe-appium-uiautomator2-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeUIAutomator2` - - [axe-appium-xcuitest-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeXCUITEST` + - axe-appium-uiautomator2-driver: Automation name is `AxeUIAutomator2` + - axe-appium-xcuitest-driver: Automation name is `AxeXCUITEST` :::info Min iOS Version for `axe-appium-xcuitest-driver`: -- You can use the `axe-appium-xcuitest-driver` only for devices with iOS 17 or above. - ::: +- You can use the `axe-appium-xcuitest-driver` only for devices with iOS 17 or above. +- To ensure compatibility, set the `appium:platformVersion` capability to `'^1(7|8).*$'` in your Appium configuration. +::: - ****Backward Compatibility with Deprecated Plugin:**** While Deque’s [axeDevToolsMobile Appium Plugin](https://docs.deque.com/devtools-mobile/2024.2.14/en/june-2024-3) has been deprecated, Sauce Labs will continue hosting it until January 31st 2025, allowing users time to migrate to the new drivers. -- ****Powered by Appium :**** This version is built on version [2.12.1](https://github.com/appium/appium/releases/tag/appium%402.12.1) of appium, -ensuring the latest Appium features and compatibility enhancements. ## How to Use `appium2-deque-accessibility` @@ -123,13 +132,13 @@ describe("Test appium2-deque-accessibility - Using Drivers Android/iOS", () => { }); }); ``` -## Migrating from the Deprecated `axeDevToolsMobile` Plugin to Deque Drivers +## Migrating from the Deprecated Plugin to Deque New Drivers Deque's axeDevToolsMobile Appium Plugin is deprecated and will no longer be supported after January 31st 2025. Moving forward, the following drivers should be used to ensure compatibility and continued support for accessibility testing: -- Android: [axe-appium-uiautomator2-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeUIAutomator2` -- iOS : [axe-appium-xcuitest-driver](https://docs.deque.com/devtools-mobile/2024.9.18/en/appium-setup#configure-your-tests): Automation name is `AxeXCUITEST` +- Android: axe-appium-uiautomator2-driver: Automation name is `AxeUIAutomator2` +- iOS : axe-appium-xcuitest-driver: Automation name is `AxeXCUITEST` ### Why Migrate? - Continued Support: The plugin will no longer receive updates, fixes, or enhancements. @@ -169,6 +178,6 @@ await driver.execute('mobile: axeScan', scanSettings); - Ensure your Appium server is correctly set up to use the `appium2-deque-accessibility` version. - Validate that your app and environment meet the OS version requirements for the selected Deque drivers. -- For iOS, remember that the AxeXCUITEST driver only works on devices running iOS 17 or later. +- For iOS, remember that the AxeXCUITEST driver only works on devices running iOS 17 or above. - The axeDevToolsMobile plugin will remain available in the Sauce Labs cloud until January 31st 2025. -- Use the Deque [documentation](https://docs.deque.com/devtools-mobile/2024.2.14/en/appium-setup) for further driver-specific details. \ No newline at end of file +- Use the Deque [documentation](https://docs.deque.com/devtools-mobile/appium-setup) for further driver-specific details. \ No newline at end of file diff --git a/sidebars.js b/sidebars.js index 401284617e..109a8d41fc 100644 --- a/sidebars.js +++ b/sidebars.js @@ -1408,7 +1408,7 @@ module.exports = { 'mobile-apps/automated-testing/appium/test-app-upgrades', 'mobile-apps/automated-testing/appium/appium-flutter', 'mobile-apps/automated-testing/appium/appium-flutter-integration-driver', - 'mobile-apps/automated-testing/appium/appium-deque-drivers', + 'mobile-apps/automated-testing/appium/appium-deque-accessibility-testing', ], }, { From 7f095cd9c7454d3ec5479af41f047625783065c7 Mon Sep 17 00:00:00 2001 From: bahrimootaz <105734428+bahrimootaz@users.noreply.github.com> Date: Tue, 19 Nov 2024 12:29:49 +0100 Subject: [PATCH 11/13] Update docs/mobile-apps/automated-testing/appium/appium-versions.md Co-authored-by: Thiago Veronese <59449233+thiagosaucelabs@users.noreply.github.com> --- docs/mobile-apps/automated-testing/appium/appium-versions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/mobile-apps/automated-testing/appium/appium-versions.md b/docs/mobile-apps/automated-testing/appium/appium-versions.md index 86ded74136..f21746c35b 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-versions.md +++ b/docs/mobile-apps/automated-testing/appium/appium-versions.md @@ -156,7 +156,7 @@ The current end-of-life strategy outlined above is specific to Real Devices. We :::info Supported Custom Appium Plugins: The following list of custom Appium plugins are supported: -- [Appium Images Plugin](https://www.npmjs.com/package/@appium/images-plugin). This plugin will now be included by default with Appium version `latest` and all subsequent versions released after April 1st. +- [Appium Images Plugin](https://www.npmjs.com/package/@appium/images-plugin). This plugin will now be included by default with Appium version `latest` and all subsequent versions released after April 1st 2024. - [Deque axe DevTools® Mobile Analyzer Accessibility plugin](https://docs.deque.com/devtools-mobile/appium). This plugin helps you with automated accessibility testing. Empower your team to focus on identifying and resolving accessibility issues. Requires Deque axe DevTools® Mobile license. Deprecated ::: From 6c7e3e7dbe055dcf97f475f9486f64047c0c8833 Mon Sep 17 00:00:00 2001 From: Mootaz Bahri Date: Tue, 19 Nov 2024 13:04:10 +0100 Subject: [PATCH 12/13] Document appium deque integration using the axe devtools for mobile --- .../appium/appium-2-deque-drivers.md | 62 ++++++++++++++++--- 1 file changed, 54 insertions(+), 8 deletions(-) diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md index 51f5d44937..604313fd15 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -52,7 +52,9 @@ You can find more details on Sauce Labs' [Appium versions documentation](/mobile - axe-appium-xcuitest-driver: Automation name is `AxeXCUITEST` :::info Min iOS Version for `axe-appium-xcuitest-driver`: - You can use the `axe-appium-xcuitest-driver` only for devices with iOS 17 or above. -- To ensure compatibility, set the `appium:platformVersion` capability to `'^1(7|8).*$'` in your Appium configuration. +- To ensure compatibility, set the appium:platformVersion capability in your Appium configuration based on the iOS versions +supported by the axe-appium-xcuitest-driver. Refer to the [Deque documentation](https://docs.deque.com/devtools-mobile/appium-sauce) +for detailed requirements and supported versions. ::: - ****Backward Compatibility with Deprecated Plugin:**** While Deque’s [axeDevToolsMobile Appium Plugin](https://docs.deque.com/devtools-mobile/2024.2.14/en/june-2024-3) has been deprecated, Sauce Labs will continue hosting it until January 31st 2025, allowing users time to migrate to the new drivers. @@ -150,29 +152,73 @@ the following drivers should be used to ensure compatibility and continued suppo Replace the old plugin reference with the appropriate new driver. Choose the correct automationName based on your platform: -Use `AxeUIAutomator2` for Android. -Use `AxeXCUITEST` for iOS. ++ Use `AxeUIAutomator2` for Android. ++ Use `AxeXCUITEST` for iOS. Additionally, specify the appiumVersion as `appium2-deque-accessibility`. + + + + + +```js +const capabilities = { + platformName: 'Android', + 'appium:platformVersion': '1[0-9]', + 'appium:automationName': 'AxeUIAutomator2', // New Automation name goes here + ... + 'sauce:options': { + ... + appiumVersion: 'appium2-deque-accessibility', + }, +} +``` + + + + ```js const capabilities = { - ..., - 'appium:automationName': 'AxeUIAutomator2', // For Android; use 'AxeXCUITEST' for iOS - ..., + platformName: 'iOS', + 'appium:platformVersion': '^1(7|8).*$', // The iOS driver will work only on devices running iOS 17 and above + 'appium:automationName': 'AxeXCUITEST', // New Automation name goes here + ... 'sauce:options': { - ..., + ... appiumVersion: 'appium2-deque-accessibility', }, -}; +} ``` + + + + 2. ****Update Your Testing Scripts**** The `axe:Scan` command used with the ****deprecated**** plugin should now be replaced with the new `mobile: axeScan` command. This command works with the new drivers and requires the same API key setup. + + + + ```js await driver.execute('mobile: axeScan', scanSettings); ``` + + + ## Additional Notes From f5bbff091a2735beaf9d3a8286ce6bd6f8f5270a Mon Sep 17 00:00:00 2001 From: Mootaz Bahri Date: Tue, 19 Nov 2024 15:33:59 +0100 Subject: [PATCH 13/13] Document appium deque integration using the axe devtools for mobile --- .../appium/appium-2-deque-drivers.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md index 604313fd15..b50360d2dd 100644 --- a/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md +++ b/docs/mobile-apps/automated-testing/appium/appium-2-deque-drivers.md @@ -124,6 +124,15 @@ This key is required to authenticate and initiate accessibility scans during you 3. Prepare Your Testing Script Once you have your API key, include it in your test script to perform a scan using the `mobile: axeScan` command. Below is an example script: + + + + ```js describe("Test appium2-deque-accessibility - Using Drivers Android/iOS", () => { it('test appium2-deque-accessibility', async () => { @@ -134,6 +143,10 @@ describe("Test appium2-deque-accessibility - Using Drivers Android/iOS", () => { }); }); ``` + + + + ## Migrating from the Deprecated Plugin to Deque New Drivers Deque's axeDevToolsMobile Appium Plugin is deprecated and will no longer be supported after January 31st 2025. Moving forward,