axe DevTools Mobile Note sulla versione del 28 febbraio 2024

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

28 Febbraio, 2024

Not for use with personal data

Versioni dei componenti

  • axeDevToolsXCUI v2.9.1
  • axe-devtools-android v5.2.0

Cosa c'è di nuovo?

Soluzione Appium migliorata

  • Il 14 febbraio è stata rilasciata una soluzione migliorata per l'utilizzo di Appium. Vedere le note di rilascio.

Android

  • Il metodo connect() per l'autenticazione al server axe DevTools Mobile è stato deprecato in favore di loginWithUsername() o loginWithApiKey(). Riferimento API
  • È ora disponibile una nuova API che consente di utilizzare tag di prova per individuare ed eseguire la scansione di un particolare elemento componibile nei layout di Jetpack Compose. Può essere utile quando una schermata presenta un mix di layout Jetpack Compose e XML. Esempio

Correzioni di bug

iOS

  • Risolto un falso negativo con la regola Nome controllo attivo in cui un elemento searchBarTextField senza un'etichetta accessibile stava superando in modo errato la regola.
  • Risolto un falso positivo con la regola del Contrasto del Colore nei campi di testo quando il cursore è presente. Quando un campo di testo sembra modificato, lo metteremo nello stato "Necessita di revisione" anziché "Fallito".

Android

  • Risolto un problema per cui Mobile Analyzer a volte si bloccava durante la scansione di app multipiattaforma.
  • Corretti i falsi positivi con le regole Testo focalizzabile e Nome degli Elementi Nidificati in esecuzione per le visualizzazioni che non erano visibili all'utente. La regola non verrà più eseguita a meno che la vista non sia visibile sullo schermo.

Problemi noti

Se riscontri uno dei problemi elencati di seguito, contattaci all'indirizzo helpdesk@deque.com o support.deque.com. Saremo quindi in grado di informarti una volta risolto il problema o di una soluzione alternativa individuata, se non ne è elencata nessuna.

important
  • I test automatizzati di axe DevTools Mobile vengono eseguiti su applicazioni native iOS, native Android e React Native. Contatta il tuo rappresentante Deque per soluzioni di test di accessibilità sul tuo stack tecnologico.
  • Anche se potresti ottenere alcuni risultati dalle visualizzazioni web o dai PDF renderizzati, ti consigliamo vivamente di effettuare dei test utilizzando axe DevTools for Web o axe Monitor per i test di accessibilità per il web più completi.

axe DevTools Mobile per iOS

Errore nel progetto Analyzer e Test tramite ID del bundle in 2.8.1

Nella versione 2.8.1, la funzionalità di test di un'applicazione tramite identificatore bundle non funzionava, provocando un errore denominato "Nessun percorso dell'applicazione di destinazione specificato tramite la configurazione del test: ...". Per risolvere l'errore, esegui l'aggiornamento alla versione 2.8.2 o all'ultima versione. Aggiorna alla versione più recente del progetto iOS Analyzer.

Le Viste fuori dallo schermo potrebbero mostrare risultati per le app SwiftUI testate in iOS 17

Con la versione 2.8.0 (Visualizza note di rilascio), i risultati non vengono più segnalati nelle viste non visibili, comprese quelle fuori dallo schermo o nascoste da un'altra vista. Abbiamo scoperto che nelle applicazioni SwiftUI testate in iOS 17 alcuni risultati sono ancora visibili. (#1383)

La regola Supporta il tipo dinamico non funziona con il simulatore iOS 15 Pro

Si è verificato un problema nel simulatore dell'iPhone Pro con iOS 15 che impedisce l'esecuzione della regola Supporta i tipi dinamici. Se hai scelto la regola Supporta il tipo dinamico, non potrai testarlo utilizzando un simulatore di iPhone Pro con iOS 15. È stato segnalato un bug ad Apple.

Regole contro i controlli nidificati

Esaminando un possibile miglioramento delle nostre regole, abbiamo scoperto che in XCTest i controlli nidificati non vengono restituiti nell'albero di accessibilità. È stato segnalato un bug ad Apple. (#1110)

Falso positivo: in Scroll View, ActiveControlName

Stiamo lavorando attivamente per risolvere i seguenti falsi positivi e aggiorneremo questo elenco non appena saranno pubblicate le correzioni.

Nella vista a scorrimento
Potrebbero essere segnalati problemi relativi al testo all'interno di elementi che si comportano come banner. Per rendere questi elementi disponibili a coloro che necessitano di testo più grande, utilizzare UILargeContentViewer. (#622) NomeControlloAttivo
Se un UIImageView ha un `accessibilityIdentifier` impostato ma non è attivabile da VoiceOver, e al suo interno contiene controlli attivabili, ActiveControlName potrebbe segnalare un falso positivo su UIImageView. Rimuovendo il `accessibilityIdentifier` il problema viene risolto. È stato segnalato un bug ad Apple. (#1226)

Falso negativo: nome della visualizzazione dell'immagine, testo selezionabile in iOS 13 tramite iOS 14.8.1

Stiamo lavorando attivamente per correggere i seguenti falsi negativi e aggiorneremo questo elenco non appena saranno pubblicate le correzioni.

Nome ImageView
Se un UIImageView ha un `accessibilityIdentifier` impostato ma non è attivabile tramite VoiceOver, NomeImageView potrebbe segnalare un falso negativo su UIImageView. Rimuovendo il `accessibilityIdentifier` il problema viene risolto. È stato segnalato un bug ad Apple. (#1226) Testo selezionabile
Gli elementi contrassegnati come elementi non accessibili potrebbero segnalare risultati errati a causa di un bug nel framework di Apple.

axe DevTools Mobile per Android

Arresto anomalo durante l'utilizzo di Proguard

Se la build di debug o di test utilizza Proguard, seguire i passaggi per escludere Deque nelle impostazioni di Proguard.

Arresto anomalo quando `minifiedEnabled` è impostato su true

Se minimizzi la tua compilazione, vedrai un crash con un registro degli errori che segnala che non è stato possibile trovare un adattatore quando provi ad accedere alla libreria axe DevTools. Disabilita la minimizzazione per le compilazioni di debug con axe DevTools implementato. (#729)

Le build con r8 abilitato generano un errore

Una compilazione con r8 abilitato potrebbe tentare di minimizzare la libreria axeDevTools, generando un errore simile a:

Caused by: java.lang.NullPointerException: throw with null exception
at g.b.b.a$a.a(Unknown Source:1)
at g.b.b.a$a.a(Unknown Source:0)
at g.b.b.a.a(AccessToken.java:190)
	
Per risolvere questo errore, aggiungi la seguente riga al tuo file ProGuard per mantenere le classi axeDevTools:
keep class com.deque.** { *; }

Messaggio di errore simile a:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
o : No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?

Se riscontri un errore del tipo `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)` o `No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?`, fai riferimento a Compose setTestTag API.

Dashboard di axe DevTools Mobile

Screenshot mancante

Se lo screenshot non è presente nella pagina dei dettagli della scansione, è possibile che l'app impedisca l'acquisizione degli screenshot. Spesso ciò avviene per motivi di sicurezza nell'applicazione di produzione. Considera di rimuovere questo requisito dalla build di test per consentire la piena funzionalità nella dashboard mobile di axe DevTools.

Alcuni nomi di scansione Android non sono formattati

Alcuni nomi di scansione Android che per impostazione predefinita compaiono nel titolo della schermata appariranno come nome completo della classe, incluso l'identificativo del bundle. In una versione futura, questo verrà risolto in modo che il titolo dello schermo sia formattato in un nome più leggibile. Come soluzione alternativa, puoi impostare il nome della scansione dalla dashboard o dai framework. (#1643)

axe DevTools Mobile per Appium

Falso positivo: Nome visualizzazione attiva

A causa delle limitazioni nelle informazioni disponibili tramite la piattaforma Appium, abbiamo identificato un falso positivo per Nome della vista attiva quando si utilizza la proprietà labeledBy per fornire un'etichetta per un elemento pulsante. Stiamo valutando soluzioni e prevediamo una correzione in una versione futura.

React Native: Etichetta nel nome ed etichetta nella parte anteriore

A causa delle limitazioni nelle informazioni disponibili tramite la piattaforma Appium, abbiamo identificato che le regole 'Label In Name' e 'Label At Front' non possono essere eseguite per le app create con React Native. Stiamo valutando soluzioni e prevediamo una correzione in una versione futura.

React Native: 'Inspect View Hierarchy' che mostra la schermata precedente

A volte la proprietà sorgente della pagina Appium necessita di più tempo per essere aggiornata tra una scansione e l'altra. In tal caso, quando si utilizza la funzione di ispezione sulla dashboard verrà visualizzata la gerarchia di visualizzazione della schermata precedente. Per risolvere il problema, aggiungi un piccolo timeout prima di chiamare l'API della sorgente della pagina per richiedere la scansione di accessibilità. Esempio:

			await driver.pause(1000);
    		const result = await driver.getPageSource();