Gerichte tests uitvoeren met XCTest
Voeg het framework toe aan je UI-tests
Wanneer je volledige controle wilt hebben over wanneer en waar toegankelijkheidsscans in je tests worden uitgevoerd, moet je Gerichte Tests implementeren. Volg de onderstaande stappen om de AxeDevTools-bibliotheek in te stellen binnen je UI-tests om toegankelijkheidsproblemen te controleren. Je roept de axe.scan()-methode expliciet aan op specifieke punten in je code.
Geautomatiseerd testen
XCTest is vereist om axeDevToolsXCUI uit te voeren. Andere UI-testframeworks die gebruikmaken van XCTest worden ondersteund.
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-instantie vast te houden:
var axe: AxeDevTools?Initialiseer het framework binnen de setUp- of setUpWithError-methodes.
Start een testsessie
Genereer een API-sleutel op axe.deque.com. Om resultaten naar Axe Developer Hub te sturen, gebruik startScanSession met de API-sleutel en Project-ID van Developer Hub.
axe = try? AxeDevTools.startScanSession(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.startScanSession(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.startScanSession(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 vervolgens de 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 gemaakt en het axeDevToolsXCUI-framework hebt geïntegreerd, ben je klaar om te mobiele app te scannen. Optioneel kun 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.
