Note di rilascio di Axe DevTools Mobile 19 novembre 2024
19 novembre 2024
Versioni dei componenti
- Android SDK (axe-devtools-android v6.0.0)
- Android Analyzer (Axe Accessibility Analyzer v1.10.0)
- Android Appium Driver (axe-appium-uiautomator2-driver v1.2.0)
Come aggiornare: Android SDK, Android Analyzer, Android Appium Driver
Modifiche importanti
L'SDK di Android è stato aggiornato alla versione v6.0.0, che include due modifiche importanti. La regola Inactive Accessible View è stata rimossa poiché è stata rinominata in Inaccessible Action nella v5.6.0. Anche il metodo opt-in per il servizio di utilizzo è stato rimosso poiché era stato deprecato nella v5.4.0, e ora gli utenti possono abilitare il monitoraggio del servizio di utilizzo dal portale Axe Account.
Correzioni
- Flusso delle autorizzazioni semplificato nell'app Axe Accessibility Analyzer
- Migliorata l'accuratezza delle regole: Label in Name, Label at Front, Active View Name, Checkbox Name, Nested Elements Name e Switch Name
Problemi noti
Se stai riscontrando uno dei seguenti problemi, ti preghiamo di contattarci all'indirizzo helpdesk@deque.com o support.deque.com. Potremo quindi informarti una volta risolto il problema o fornire una soluzione alternativa se non è elencata.
- Axe DevTools Mobile esegue test automatizzati su applicazioni native iOS, Android e React Native. Contatta il tuo rappresentante Deque per soluzioni di test di accessibilità sulla tua tecnologia.
- Anche se puoi ottenere alcuni risultati da webview o PDF renderizzati, raccomandiamo vivamente di eseguire test utilizzando Axe DevTools for Web o Axe Monitor per i test di accessibilità più completi per il web.
iOS
Errore nel progetto Analyzer e test per ID bundle in 2.8.1
La funzionalità di test di un'applicazione tramite identificatore di bundle è stata compromessa nella versione 2.8.1, causando un errore intitolato "Nessun percorso applicazione di destinazione specificato tramite configurazione del test: ...". Aggiorna alla versione 2.8.2 o all'ultima versione per risolvere l'errore. Aggiorna all'ultima versione all'interno del progetto iOS Analyzer.
Falso positivo: LabelInName e LabelAtFront in app SwiftUI e cross-platform
Alcuni schermi possono riportare falsi positivi con LabelInName e LabelAtFront a causa di una proprietà associatedText errata trovata (#1622)
La regola Supports Dynamic Type non funziona con il simulatore iOS 15 Pro
Esiste un problema che interessa il simulatore iPhone 15 Pro che impedisce l'esecuzione della regola Supports Dynamic Type. Se hai optato per la regola Supports Dynamic Type, non sarai in grado di testarla utilizzando un simulatore iPhone 15 Pro. È stato presentato un bug ad Apple.
Regole contro controlli annidati
Durante il miglioramento delle nostre regole, abbiamo riscontrato che in XCTest, i controlli annidati non vengono restituiti nell'albero di accessibilità. È stato segnalato un bug ad Apple. (#1110)
La regola Nome ImageView necessita di revisione dei risultati per app UIKit
Nelle app UIKit, un'immagine senza un `accessibilityLabel` non è focalizzabile con la tecnologia assistiva per impostazione predefinita.
Le proprietà che utilizziamo per verificare la focalizzazione da Apple potrebbero essere imprecise quando un `accessibilityIdentifier` è impostato sull'immagine. A causa di questo comportamento inatteso, i risultati per i problemi di Nome ImageView nelle app UIKit risulteranno come da Revisionare. È stato segnalato un bug ad Apple. (#1633)
Falso positivo: In Scroll View, Label In Name, Label at Front, e v2.11.0 Image View Name & ActiveControlName
Stiamo lavorando attivamente su correzioni per i seguenti falsi positivi e aggiorneremo questa lista non appena le correzioni saranno rilasciate.
In Scroll View
Potrebbe segnalare problemi per il testo all'interno di elementi che si comportano come banner. Per rendere questi elementi disponibili a coloro che necessitano di un testo più grande, utilizza UILargeContentViewer. (#622)
v2.11.0 Image View Name & Active Control Name
Se un UIImageView ha un `accessibilityIdentifier` impostato ma non è focalizzabile da VoiceOver, e ha controlli focalizzabili annidati all'interno di esso, ActiveControlName potrebbe segnalare un falso positivo sull'UIImageView. Rimuovere l'`accessibilityIdentifier` risolve il problema. È stato presentato un bug ad Apple. (#1633)
Label In Name and Label At Front
Queste due regole cercano l'etichetta visibile di un controllo tra gli elementi vicini per determinare lo stato della regola. In alcune gerarchie di visualizzazione, il testo vicino errato può essere rilevato causando il fallimento di queste regole. (#1622)
Android
App Analyzer: Il pulsante di azione flottante scompare
Introdotta con API 31 (Android 12) è la possibilità di nascondere le sovrapposizioni non di sistema. Per poter utilizzare l'app Axe Analyzer, assicurati che questa impostazione non sia attivata. Se hai scelto di utilizzare questa funzionalità per i suoi miglioramenti di sicurezza, ti consigliamo di lasciarla disattivata per le build di test interne dove puoi utilizzare in sicurezza i dati dei test ed eliminare in questo modo le preoccupazioni di sicurezza. Note: this setting does not affect Google's accessibility scanner app as it's considered a system overlay.
Per utilizzare l'app Axe Accessibility Analyzer, aggiorna le chiamate al metodo setHideOverlayWindows(true) a setHideOverlayWindows(false) sulle finestre delle attività interessate.
Screenshot mancanti (scatola nera) nella Dashboard
Per sbloccare la piena funzionalità di Axe DevTools per Mobile, assicurati che gli screenshot siano abilitati. Raccomandiamo di abilitare gli screenshot su una versione di debug o test della tua app che utilizza dati simulati per evitare preoccupazioni di sicurezza. Consulta la nostra guida su abilitare gli screenshot nelle app Android.
Crash quando `minifiedEnabled` è impostato su true
Se si minimizza la build, si verificherà un crash con un log di errore che riporta che un adattatore non può essere trovato quando si tenta di effettuare il login alla libreria Axe DevTools. Disabilita la minimizzazione per le build di debug con Axe DevTools implementato. (#729)
Le build con r8 abilitato generano un errore
Una build con r8 abilitato può tentare di minimizzare la libreria axeDevTools, risultando in 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)
To resolve this error add the following line to your ProGuard file to keep axeDevTools classes:keep class com.deque.** { *; }
Messaggio di errore simile a:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
oppure: No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?
Le API di Compose sono deprecate, si prega di usare le API agnostiche al layout per continuare a ricevere aggiornamenti. Se continui ad usare le API di Compose e incontri un errore simile a `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)` oppure `No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?`, si prega di fare riferimento a Compose setTestTag API.
Messaggio di log:MlKitContext has not been initialized
Se incontri questo messaggio, alcuni risultati delle regole potrebbero non restituire come previsto quando quella regola sta utilizzando l'intelligenza artificiale. Le regole interessate includono Contrasto dei Colori, Testo Concentrabile e Nome Elemento Nidificato. (#841)
MAUI: Regola Nome Testo Modifica
A causa delle limitazioni dell'architettura delle app MAUI nel rendering nell'ecosistema Android, la regola Nome Testo Modifica verrà mostrata come Da rivedere nella dashboard quando è sospettato un insuccesso per la versione SDK 5.5.0 e superiori. Si prega di confermare manualmente il comportamento corretto per questo caso.
Android Nativo: Dialoghi/Modali Personalizzati
Quando stai implementando dialoghi o modali personalizzati che non estendono i controlli nativi, potresti ottenere risultati per le visualizzazioni dietro il modale. In questo caso, raccomandiamo di non eseguire il nostro strumento contro questi modali o dialoghi personalizzati e invece controllarli manualmente per garantire che si comportino con la tecnologia assistiva come desiderato.
Dashboard Web
Screenshot Mancante
Se lo screenshot è mancante dalla pagina dei dettagli della scansione, la tua app potrebbe impedire la cattura degli screenshot. Spesso questo è per motivi di sicurezza nella tua applicazione di produzione. Considera la possibilità di rimuovere questa restrizione per la build di test in modo da consentire la piena funzionalità nel Dashboard Mobile di Axe DevTools.
Alcuni nomi di scansioni Android non sono formattati
Alcuni nomi di scansioni Android che sono predefiniti al titolo dello schermo appariranno come il nome completo della classe incluso l'identificatore del pacchetto. In una versione futura, questo sarà risolto in modo che il titolo dello schermo sia formattato in un nome più leggibile. Come soluzione temporanea, puoi impostare il nome della scansione dalla dashboard o dai framework. (#1643)
