Gerichte tests uitvoeren met XCTest
Voeg het framework toe aan je UI-tests
Wanneer je volledige controle wilt over wanneer en waar toegankelijkheidsscans in je tests worden uitgevoerd, moet je gerichte tests implementeren. Volg de onderstaande stappen om de AxeDevTools-bibliotheek op te zetten binnen je UI-tests om te controleren op toegankelijkheidsproblemen. Je roept expliciet de axe.scan() methode aan op specifieke punten in je code.
Geautomatiseerd testen
XCTest is vereist om axeDevToolsXCUI. Andere UI-testframeworks worden ondersteund die gebruikmaken van XCTest.
Setup voor testen
Importeer in elk bestand dat wordt gebruikt voor toegankelijkheidstests het axeDevToolsXCUI-framework.
import axeDevToolsXCUIMaak een object binnen je testklasse om de axe DevTools-instance vast te houden:
var axe: AxeDevTools?Initialiseer het framework binnen de setUp of setUpWithError methoden.
Start een testsessie
Genereer een API-sleutel op axe.deque.com. Om resultaten naar axe Developer Hub te posten, gebruik startSession met de API-sleutel en Project ID van Developer Hub.
axe = try? AxeDevTools.startSession(apiKey: "<DEQUE_APIKEY>",
projectId: "<DEVHUB_PROJECT_ID>")Als je de resultaten alleen lokaal wilt opslaan, hoef je de Project ID niet op te nemen.
axe = try? AxeDevTools.startSession(apiKey: "<DEQUE_APIKEY>")Voorbeeld van setup
import axeDevToolsXCUI
import XCTest
class MyUITests: XCTestCase {
var axe: AxeDevTools?
var app = XCUIApplication()
override func setUpWithError() throws {
axe = try AxeDevTools.startSession(apiKey: "<DEQUE_APIKEY>",
projectId: "<DEVHUB_PROJECT_ID>")
// Include the projectId to post results to axe Developer Hub (recommended)
app.launch()
}
}Verbinden met offline licentiesleutel
Offline automatisering is beschikbaar voor de iOS SDK, maar vereist een offline licentiesleutel voor authenticatiedoeleinden. Neem contact op met je Deque-vertegenwoordiger of neem contact op met de ondersteuning om de levering van je licentiesleutel te coördineren. Gebruik daarna onderstaande codefragment om verbinding te maken met de axeDevTools bibliotheek. Zie de FAQ voor meer informatie over het gebruik van de offline SDK's voor geoptimaliseerde prestaties zonder netwerkverzoeken.
import axeDevToolsXCUI_noauth
import XCTest
class MyUITests: XCTestCase {
var axeDevTools: AxeDevTools?
override func setUpWithError() throws {
axeDevTools = AxeDevTools.loginWithLicenseKey("DEQUE_LICENSE_KEY")
...
}Wat nu?
Nu je een project hebt aangemaakt en het axeDevToolsXCUI framework hebt geïntegreerd, ben je helemaal klaar om je mobiele app te scannen. Optioneel kun je je configuratie aanpassen voordat je scant, als je je scans een naam wilt geven, bepaalde resultaten wilt negeren, aangepaste regels wilt maken of scans wilt taggen.
