Test di Appium con Digital.ai
Aggiungi scansioni di accessibilità ai tuoi test Appium con Digital.ai!
Deque ha stretto una partnership con Digital.ai per integrare i test di accessibilità nei flussi di lavoro di test di automazione esistenti. Aggiungi scansioni di accessibilità ai Suoi test Appium con axe DevTools Mobile, esegua i Suoi test sui dispositivi Digital.ai, quindi visualizzi i risultati nell'axe Developer Hub.
Prerequisiti:
- Accesso a Digital.ai Continuous Testing
- La Sua applicazione caricata su Digital.ai Application Manager
- Chiave API Deque
- I test eseguiti da Lei su Appium versione 2.11.3 o successiva
- I Suoi test che utilizzano i driver AxeUIAutomator o AxeXCUITest Appium (preinstallati da Digital.ai)
Come eseguire scansioni di accessibilità
Digital.ai ha preinstallato i driver axe Appium sui propri server Appium. Questi driver consentono di eseguire scansioni di accessibilità tramite i test Appium. I driver AxeUiAutomator2 e AxeXCUITest di Deque sono stati forkati dai driver UiAutomator2 e XCUITest. Effettuiamo il fork ma non modifichiamo le funzionalità principali di questi driver. I tuoi test verranno eseguiti come previsto e avrai la funzionalità aggiuntiva di eseguire scansioni di accessibilità!
I passaggi fondamentali per configurare i tuoi test Appium per la verifica dell’accessibilità sono:
- Imposti il nome dell'automazione su
AxeUiAutomator2per Android oAxeXCUITestper iOS. (Nota il prefisso Axe.) - Inserisca la sua chiave API Deque per l'autenticazione.
- Esegua lo script
mobile: axeScanin ogni punto dei test in cui desidera eseguire una scansione di accessibilità. - Dopo aver eseguito i test sui dispositivi Digital.ai, consulti i risultati in axe Developer Hub.
Consulti la nostra guida all'installazione di Appium per scoprire come personalizzare la configurazione e sfruttare i risultati delle scansioni di accessibilità per ottimizzare il lavoro del Suo team, e consulti l'elenco completo dei test di esempio di Appium. La guida all'installazione e gli esempi sono generali e non contengono tutto ciò che serve per l'integrazione di Digital.ai.
Esempi
Gli esempi seguenti mostrano come Lei può configurare i Suoi test Appium per i test di accessibilità con la piattaforma Digital.ai. Questi esempi sono scritti in Java; tuttavia, Appium supporta più 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);
}