Tests Appium avec Digital.ai
Ajoutez des analyses d'accessibilité à vos tests Appium avec Digital.ai !
Deque s'est associé à Digital.ai pour intégrer les tests d'accessibilité à vos flux de travail de tests automatisés existants. Ajoutez des analyses d'accessibilité à vos tests Appium avec axe DevTools Mobile, exécutez vos tests sur des appareils Digital.ai, puis consultez les résultats dans le axe Developer Hub.
Conditions préalables :
- Accès à Digital.ai Continuous Testing
- Votre application téléversée dans le Digital.ai Application Manager
- Clé API Deque
- Vos tests s'exécutent 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 scans d'accessibilité
Digital.ai a pré-installé les pilotes axe Appium sur ses serveurs Appium. Ces pilotes vous permettent d'exécuter des analyses d'accessibilité à partir de vos tests Appium. Les pilotes AxeUiAutomator2 et AxeXCUITest de Deque sont forkés à partir des pilotes UiAutomator2 et XCUITest. Nous faisons un fork mais ne modifions pas la fonctionnalité principale de ces pilotes. Vos tests s'exécuteront comme prévu, et vous bénéficierez d'une capacité supplémentaire : effectuer des analyses d'accessibilité !
Voici les étapes clés pour configurer vos tests Appium en vue de tests d’accessibilité :
- Définissez le nom de l'automatisation sur
AxeUiAutomator2pour Android ouAxeXCUITestpour iOS. Veuillez noter le préfixe Axe. - Veuillez fournir votre clé API Deque pour l'authentification.
- Exécutez le script
mobile: axeScanà chaque endroit de vos tests où vous souhaitez effectuer une analyse d'accessibilité. - Après avoir exécuté vos tests sur les appareils Digital.ai, consultez vos résultats dans axe Developer Hub.
Consultez notre guide de configuration pour Appium pour apprendre à personnaliser votre configuration et à tirer parti des résultats des analyses d'accessibilité afin de 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 les tests 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);
}