Testing con Appium con Digital.ai
Aggiungi scansioni di accessibilità ai tuoi test Appium con Digital.ai!
Deque ha collaborato con Digital.ai per portare il testing di accessibilità nei tuoi attuali flussi di lavoro di test automatizzati. Aggiungi scansioni di accessibilità ai tuoi test Appium con Axe DevTools Mobile, esegui i tuoi test sui dispositivi Digital.ai, quindi rivedi i risultati nell'Axe Developer Hub.
Prerequisiti:
- Accesso a Digital.ai Continuous Testing
- La tua applicazione caricata su Digital.ai Application Manager
- Chiave API Deque
- I tuoi test eseguiti con Appium versione 2.11.3 o successiva
- I tuoi test utilizzano i driver Appium AxeUIAutomator o AxeXCUITest (preinstallati da Digital.ai)
Come effettuare scansioni di accessibilità
Digital.ai ha preinstallato i driver Axe Appium sui propri server Appium. Questi driver ti permettono di eseguire scansioni di accessibilità dai tuoi test Appium. I driver AxeUiAutomator2 e AxeXCUITest di Deque sono forkati dai driver UiAutomator2 e XCUITest. Effettuiamo il fork senza modificare la funzionalità principale di questi driver. I tuoi test si eseguiranno come previsto e avrai inoltre la capacità aggiuntiva di effettuare scansioni di accessibilità!
I passaggi chiave per configurare i tuoi test Appium per il testing di accessibilità sono:
- Imposta il nome dell'automazione su
AxeUiAutomator2per Android oAxeXCUITestper iOS. (Nota il prefisso Axe.) - Fornisci la tua chiave API Deque per l'autenticazione.
- Esegui lo script
mobile: axeScanogni volta nei tuoi test in cui desideri effettuare una scansione di accessibilità. - Dopo aver eseguito i tuoi test sui dispositivi Digital.ai, rivedi i tuoi risultati nell'Axe Developer Hub.
Consulta la nostra guida all'installazione per Appium per imparare a personalizzare la tua configurazione e sfruttare i risultati delle scansioni di accessibilità per servire al meglio il tuo team, e vedi un elenco completo di esempi di test Appium. La guida all'installazione e gli esempi sono generali e non contengono tutto ciò di cui hai bisogno per l'integrazione con Digital.ai.
Esempi
Gli esempi qui sotto mostrano come configurare i tuoi test Appium per il testing di accessibilità con la piattaforma Digital.ai. Questi esempi sono scritti in Java; tuttavia, Appium supporta diversi linguaggi di programmazione.
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);
}