Ignora Regole
Come parte della transizione dalla dashboard di Axe DevTools Mobile a Axe Developer Hub, le API ignoreRules e ignoreExperimental sono ora deprecate. Se hai utilizzato l'API ignoreRules nei tuoi test, essa continuerà a funzionare come prima. Tuttavia, ignoreExperimental sarà rimossa nella versione di ottobre 2026.
Puoi scegliere di ignorare regole specificate durante il test dell'accessibilità. Supportiamo l'ignorare tutte le istanze di una regola specifica per nome e ignorare alcune regole tramite il Nome Risorsa ID Vista. Anche se riteniamo che tutte le regole siano essenziali, queste personalizzazioni ti permetteranno di ignorare le viste che non sono ancora state corrette e di concentrarti sull'identificazione di nuovi problemi.
Negli esempi seguenti, axe si riferisce all'oggetto AxeDevTools inizializzato al momento del login.
API Disponibili
Per ignorare una regola specifica o un insieme di regole, aggiorna la configurazione prima che il test abbia luogo.
Ignora Regola(e)
Il codice qui sotto mostra come ignorare una regola specifica, TouchSizeWcag.
axe.ignoreRules(mutableListOf("TouchSizeWcag"))Ignora tramite Nome Risorsa ID Vista
Ignora un insieme di regole con un Nome Risorsa ID Vista assegnato, utilizzando due parametri: il nome della Risorsa ID Vista e un elenco di regole da ignorare.
axe.ignoreByViewIdResourceName(
"axe_button",
listOf(
"ActiveViewName"
)
)Per gli sviluppatori che scrivono viste usando Jetpack Compose, consigliamo di utilizzare Modifier.testTag("viewToIgnoreRuleOn") sulla vista che si desidera riferire piuttosto che utilizzare un ID vista. Inoltre, dovresti aggiungere la seguente proprietà semantica a uno degli antenati della vista:
Scaffold(
modifier = Modifier.semantics { testTagsAsResourceId = true }
)Una volta fatto ciò, dovresti essere in grado di ignorare le viste utilizzando il testTag al posto del viewId nell'API esistente ignoreByViewResourceId.
Esempio su Composable:
Button(
modifier = Modifier.testTag("<tagToIgnore>"),
onClick = { /* Click action */ }
) {
Text("Click me")
}Ignora Regole Sperimentali
Le Regole sperimentali sono set di regole ancora in fase di test e sviluppo. Quando ignoreExperimental è abilitato, tutti i risultati delle regole sperimentali avranno lo stato di AxeStatus.IGNORED.
axe.ignoreExperimental()Le regole sperimentali vengono ritirate e ignoreExperimental() sarà rimossa nella versione di ottobre 2026. Per mantenere una regola specifica disattivata, usa ignore(rule:) invece (vedi Ignora regole sopra).
Reimposta Regole Ignorate
All'interno del tuo suite di test automatizzati, potresti voler iniziare una nuova serie di test e ripristinare le regole tutte. In questo caso puoi cancellare qualsiasi regola ignorata che hai impostato usando i metodi sopra indicati - con l'API resetIgnoredRules.
@Before
fun setup() {
axe.resetIgnoredRules()
}
@Test
fun testButtonOnly() {
axe.ignoreRules(listOf("ScreenTitle"))
...
}
@Test
fun testScreenTitle() {
...
}