Setup für automatisierte Tests
Fügen Sie das Framework zu Ihren UI-Tests hinzu
Wenn Sie volle Kontrolle darüber haben möchten, wann und wo Barrierefreiheitsscans in Ihren Tests ausgeführt werden, sollten Sie Targeted Testing implementieren. Befolgen Sie die nachstehenden Schritte, um die AxeDevTools-Bibliothek in Ihren UI-Tests einzurichten, um Barrierefreiheitsprobleme zu überprüfen. Sie rufen die axe.scan()-Methode explizit an bestimmten Punkten in Ihrem Code auf.
Automatisiertes Testen
XCTest ist erforderlich, um axeDevToolsXCUI auszuführen. Andere UI-Testframeworks werden unterstützt, die XCTest nutzen.
Einrichtung für Tests
Importieren Sie in jeder Datei, die für Barrierefreiheitstests verwendet wird, das axeDevToolsXCUI-Framework.
import axeDevToolsXCUIErstellen Sie ein Objekt innerhalb Ihrer Testklasse, um die Axe DevTools-Instanz zu halten:
var axe: AxeDevTools?Initialisieren Sie das Framework innerhalb der setUp- oder setUpWithError-Methoden.
Starten einer Testsitzung
Generieren Sie einen API-Schlüssel unter axe.deque.com. Um Ergebnisse an das Axe Developer Hub zu senden, verwenden Sie startScanSession mit dem API-Schlüssel und der Projekt-ID von Developer Hub.
axe = try? AxeDevTools.startScanSession(apiKey: "<DEQUE_APIKEY>",
projectId: "<DEVHUB_PROJECT_ID>")Ergebnisse werden standardmäßig im Axe Developer Hub hochgeladen. Wenn Sie Ergebnisse nur lokal speichern möchten, stellen Sie axeUploadResults auf false ein. Sie müssen die Projekt-ID nicht angeben.
axe = try? AxeDevTools.startScanSession(apiKey: "<DEQUE_APIKEY>",
axeUploadResults: false)Einrichtungsbeispiel
import axeDevToolsXCUI
import XCTest
class MyUITests: XCTestCase {
var axe: AxeDevTools?
var app = XCUIApplication()
override func setUpWithError() throws {
axe = try AxeDevTools.startScanSession(apiKey: "<DEQUE_APIKEY>",
projectId: "<DEVHUB_PROJECT_ID>")
// Include the projectId to post results to axe Developer Hub (recommended)
app.launch()
}
}Verbindung mit Offline-Lizenzschlüssel
Offline-Automatisierung ist für das iOS SDK verfügbar, erfordert jedoch einen Offline-Lizenzschlüssel zu Authentifizierungszwecken. Bitte wenden Sie sich an Ihren Deque-Vertreter oder kontaktieren Sie den Support, um die Lieferung Ihres Lizenzschlüssels zu koordinieren. Verwenden Sie dann den untenstehenden Codeausschnitt, um sich mit der axeDevTools-Bibliothek zu verbinden. Siehe die FAQ für mehr Informationen zur Verwendung der Offline-SDKs für optimierte Leistung ohne Netzwerkzugriffe.
import axeDevToolsXCUI_noauth
import XCTest
class MyUITests: XCTestCase {
var axeDevTools: AxeDevTools?
override func setUpWithError() throws {
axeDevTools = AxeDevTools.loginWithLicenseKey("DEQUE_LICENSE_KEY")
...
}Was kommt als Nächstes?
Nachdem Sie ein Projekt erstellt und das axeDevToolsXCUI-Framework integriert haben, sind Sie bereit, mobile App zu scannen. Optional können Sie Ihre Konfiguration anpassen, bevor Sie scannen, wenn Sie Ihre Scans benennen, bestimmte Ergebnisse ignorieren, benutzerdefinierte Regeln erstellen oder Scans taggen möchten.
