Note di rilascio di Axe DevTools Mobile del 18 settembre 2024
18 settembre 2024
Versioni dei componenti
- SDK iOS (axeDevToolsXCUI v2.12.4)
- Analizzatore iOS (axe-devtools-mobile-analyzer v1.4.0)
- Driver Appium iOS (axe-appium-xcuitest-driver v1.0.0)
- Driver Appium Android (axe-appium-uiautomator2-driver v1.0.0)
Come aggiornare: SDK iOS, Analizzatore iOS
Novità?
Driver Appium 🎉
Siamo entusiasti di annunciare due nuovi driver Appium per una soluzione di testing dell'accessibilità Appium leader del settore. I nostri driver sono supportati dai nostri comprovati SDK, offrendovi gli stessi risultati robusti e altamente accurati di tutti i componenti Axe DevTools Mobile. I nostri driver Appium coprono tutte le regole mobili disponibili di Deque e setup richiede solo pochi minuti.
Attualmente stai utilizzando il plugin Appium Axe DevTools? Consulta la nostra guida alla migrazione per iniziare con i nuovi driver.
Correzioni
SDK e Analizzatore iOS
- Diversi miglioramenti all'accuratezza della regola del contrasto dei colori
- Risolto un errore di serializzazione che causava il fallimento di alcune scansioni
Problemi noti
Se stai riscontrando uno dei problemi sotto elencati, contattaci a helpdesk@deque.com o support.deque.com. Saremo quindi in grado di informarti una volta risolto o di un'eventuale soluzione alternativa se non è elencata.
- L'automazione dei test di Axe DevTools Mobile funziona su applicazioni native iOS, Android native e React Native. Contatta il tuo rappresentante Deque per soluzioni di test di accessibilità sul tuo stack tecnologico.
- Sebbene sia possibile ottenere alcuni risultati dai web view o dai PDF resi, consigliamo vivamente di effettuare il testing utilizzando Axe DevTools per il Web o Axe Monitor per il testing di accessibilità più completo per il web.
iOS
Errore nel progetto Analyzer e test tramite ID del pacchetto in 2.8.1
La funzionalità di test di un'applicazione tramite identificatore di pacchetto si è interrotta nella versione 2.8.1 risultando in un errore intitolato "Nessun percorso applicativo target 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 SwiftUI & App cross-platform
Alcuni schermi possono segnalare falsi positivi con LabelInName e LabelAtFront a causa di una proprietà associatedText errata (#1622)
Regola Supports Dynamic Type non funzionante con simulatore iOS 15 Pro
C'è un problema che riguarda il simulatore iPhone 15 Pro che impedisce l'esecuzione della regola Supports Dynamic Type. Se sei abilitato alla regola Supports Dynamic Type, non potrai testarla utilizzando un simulatore iPhone 15 Pro. È stato aperto un bug con Apple.
Regole contro i controlli nidificati
Mentre esaminavamo un miglioramento per le nostre regole, abbiamo scoperto che in XCTest, i controlli nidificati non vengono restituiti nell'albero dell'accessibilità. È stato aperto un bug con Apple. (#1110)
La regola ImageView Name richiede una revisione dei risultati per le app UIKit
Nelle app UIKit, un'immagine senza un `accessibilityLabel` non è focalizzabile con la tecnologia assistiva di default.
Le proprietà che usiamo per controllare la focalizzabilità da Apple possono essere inaccurati quando è impostato un `accessibilityIdentifier` sull'immagine. A causa di questo comportamento imprevedibile, i risultati per i problemi ImageView Name nelle app UIKit verranno segnalati come Bisogna revisionare. È stato aperto un bug con 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 questo elenco man mano che le correzioni verranno rilasciate.
In Scroll View
Potrebbe segnalare problemi per il testo all'interno di elementi che si comportano come banner. Per rendere questi elementi accessibili a chi necessita di testo più grande, usare UILargeContentViewer. (#622)
v2.11.0 Image View Name & Active Control Name
Se un UIImageView ha impostato un `accessibilityIdentifier` ma non è focalizzabile da VoiceOver, e ha controlli focalizzabili nidificati al suo interno, ActiveControlName potrebbe segnalare un falso positivo sull'UIImageView. Rimuovendo l'`accessibilityIdentifier` si risolve il problema. È stato aperto un bug con Apple. (#1633)
Label In Name and Label At Front
Queste due regole cercano l'etichetta visibile di un controllo tra gli elementi vicini per aiutare a determinare lo stato della regola. In alcune gerarchie di visualizzazione, potrebbe essere rilevato testo sbagliato che causa il fallimento di queste regole. (#1622)
Android
App Analyzer: il pulsante di azione fluttuante scompare
Introdotta con API 31 (Android 12) è la possibilità di nascondere sovrapposizioni non di sistema. Per utilizzare l'app Axe Analyzer, assicurati che questa impostazione non sia attivata. Se hai deciso di utilizzare questa funzione per i suoi miglioramenti in termini di sicurezza, raccomandiamo di tenerla disattivata per le build di test interne dove puoi utilizzare in sicurezza i dati di test ed eliminare così 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 eventuali chiamate al metodo setHideOverlayWindows(true) a setHideOverlayWindows(false) nelle finestre delle attività interessate.
Screenshot Mancante (Riquadro Nero) nel Dashboard
Per sbloccare tutte le funzionalità di Axe DevTools per Mobile, assicurati che gli screenshot siano abilitati. Ti consigliamo di abilitare gli screenshot su una versione di debug o di test della tua app che utilizza dati fittizi per evitare problemi di sicurezza. Consulta la nostra guida per abilitare gli screenshot nelle app Android.
Crash quando `minifiedEnabled` è impostato su true
Se minimizzi la tua build, vedrai un crash con un registro errore che riporta che un adattatore non è stato trovato quando si tenta di accedere alla libreria Axe DevTools. Disabilita il minify per le tue 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()?
Se incontri un errore del tipo `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)` oppure `No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?`, fai riferimento a API Compose setTestTag.
Messaggio di log:MlKitContext has not been initialized
Se incontri questo messaggio, alcuni risultati delle regole potrebbero non restituire i valori attesi quando quella regola utilizza l'intelligenza artificiale. Le regole interessate includono Contrasto dei Colori, Testo a Fuoco e Nome Elemento Annidato. (#841)
MAUI: Regola Nome Testo Modifica
A causa delle limitazioni dell'architettura delle app MAUI nel rendering all'interno dell'ecosistema Android, la regola Nome Testo Modifica verrà indicata come Da Revisionare nel dashboard quando si sospetta un errore per la versione SDK 5.5.0 e successive. Si prega di confermare manualmente il comportamento corretto in questo caso.
Android Nativo: Dialoghi Personalizzati / Modali
Quando implementi dialoghi o modali personalizzati che non estendono i controlli nativi, potresti ottenere risultati per le visualizzazioni dietro al modale. In questo caso, consigliamo di non eseguire il nostro strumento contro questi modali o dialoghi personalizzati, ma di controllarli manualmente per assicurarti che si comportino con la tecnologia assistiva come desiderato.
Dashboard Web
Screenshot Mancante
Se lo screenshot manca dalla pagina dei dettagli della scansione, la tua app potrebbe impedire la cattura degli screenshot. Spesso ciò accade per motivi di sicurezza nella tua applicazione in produzione. Considera la possibilità di rimuovere questo requisito per la tua build di test per consentire la piena funzionalità nel Dashboard Mobile di Axe DevTools.
Alcuni nomi di scansione Android non sono formattati
Alcuni nomi di scansione Android che di default corrispondono 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 dal dashboard o dai framework. (#1643)
