Test Appium avec Digital.ai
Ajoutez des analyses d'accessibilité à vos tests Appium avec Digital.ai !
Deque s'est associé à Digital.ai pour intégrer des tests d'accessibilité à vos workflows de tests automatisés existants. Ajoutez des analyses d'accessibilité à vos tests Appium avec Axe DevTools Mobile, exécutez vos tests sur les appareils Digital.ai, puis examinez les résultats dans leAxe Developer Hub.
Conditions préalables :
- Accès à Digital.ai Continuous Testing
- Votre application téléchargée sur le Gestionnaire d'applications Digital.ai
- Clé API Deque
- Vos tests exécutés avec Appium version 2.11.3 ou supérieure
- Vos tests utilisant les pilotes Appium AxeUIAutomator ou AxeXCUITest (pré-installés par Digital.ai)
Comment réaliser des analyses d'accessibilité
Digital.ai a pré-installé les pilotes Axe Appium sur leurs serveurs Appium. Ces pilotes vous permettent d'exécuter des analyses d'accessibilité depuis vos tests Appium. Les pilotes AxeUiAutomator2 et AxeXCUITest de Deque sont dérivés des pilotes UiAutomator2 et XCUITest. Nous les avons dérivés sans modifier leur fonctionnalité de base. Vos tests s'exécuteront comme prévu, et vous pourrez également réaliser des analyses d'accessibilité !
Les étapes clés pour configurer vos tests Appium pour les tests d'accessibilité sont :
- Définissez le nom d'automatisation sur
AxeUiAutomator2pour Android ouAxeXCUITestpour iOS. (Notez le préfixe Axe.) - Fournissez votre clé API Deque pour l'authentification.
- Exécutez le script
mobile: axeScanà chaque endroit dans vos tests où vous souhaitez réaliser une analyse d'accessibilité. - Après avoir exécuté vos tests sur les appareils Digital.ai, examinez vos résultats dans Axe Developer Hub.
Consultez notre guide d'installation pour Appium pour apprendre à personnaliser votre configuration et exploiter les résultats des analyses d'accessibilité pour mieux servir votre équipe, et voir une liste complète des tests d'exemple Appium. Le guide d'installation et les exemples sont généraux et ne contiennent pas tout ce dont vous avez besoin pour l'intégration Digital.ai.
Exemples
Les exemples ci-dessous montrent comment configurer vos tests Appium pour le test d'accessibilité avec la plateforme Digital.ai. Ces exemples sont écrits en Java ; cependant, Appium prend en charge plusieurs langages de programmation.
Android
@BeforeMethod
public void setUp() throws MalformedURLException {
desiredCapabilities.setCapability("accessKey", ACCESS_KEY); // Digital.ai's Access Key
desiredCapabilities.setCapability("deviceQuery", "@os='android'");
desiredCapabilities.setCapability("appium:automationName", "AxeUiAutomator2");
desiredCapabilities.setCapability("app", "cloud:com.experitest.ExperiBank/.LoginActivity");
desiredCapabilities.setCapability("appPackage", "com.experitest.ExperiBank");
desiredCapabilities.setCapability("appActivity", ".LoginActivity");
desiredCapabilities.setCapability("appiumVersion", "2.16.2");
driver = new AndroidDriver(new URL("https://<your_cloud_url>/wd/hub"), desiredCapabilities);
Map<String, Object> settings = new HashMap<>();
List<String> tags = new ArrayList<>();
settings.put("apiKey", <DEQUE_API_KEY>); // Deque API Key
settings.put("projectId", <DEVHUB_PROJECT_ID>) // axe Developer Hub Project ID
settings.put("scanName", "Axe driver"); // a customized scan name to better identify scans within the dashboard.
settings.put("tags", tags); // an array of strings to apply to scans as tags.
driver.executeScript("mobile: axeScan", settings);
}iOS
@BeforeMethod
public void setUp() throws MalformedURLException {
desiredCapabilities.setCapability("accessKey", ACCESS_KEY); // Digital.ai's Access Key
desiredCapabilities.setCapability("deviceQuery", "@os='ios'");
desiredCapabilities.setCapability("appium:automationName", "AxeXCUITest");
desiredCapabilities.setCapability("app", "cloud:com.experitest.ExperiBank");
desiredCapabilities.setCapability("bundleId", "com.experitest.ExperiBank");
desiredCapabilities.setCapability("appiumVersion", "2.16.2");
driver = new IOSDriver<>(new URL("https://<your_cloud_url>/wd/hub"), desiredCapabilities);
Map<String, Object> settings = new HashMap<>();
List<String> tags = new ArrayList<>();
settings.put("apiKey", <DEQUE_API_KEY>); // Deque API Key
settings.put("projectId", <DEVHUB_PROJECT_ID>) // axe Developer Hub Project ID
settings.put("scanName", "Axe driver"); // a customized scan name to better identify scans within the dashboard.
settings.put("tags", tags); // an array of strings to apply to scans as tags.
driver.executeScript("mobile: axeScan", settings);
}