Note di rilascio di Axe DevTools Mobile, 8 ottobre 2024
8 ottobre 2024
Versioni dei componenti
- Android SDK (axe-devtools-android v5.6.0)
- Android Analyzer (Axe Accessibility Analyzer v1.9.0)
- Android Appium Driver (axe-appium-uiautomator2-driver v1.1.0)
Come aggiornare: Android SDK, Android Analyzer Android Appium Driver
Novità?
Regola Azione Inaccessibile
Abbiamo rinominato Vista Accessibile Inattiva in Azione Inaccessibile per allineare la denominazione della regola per iOS. Abbiamo anche deciso di contrassegnare questa regola come sperimentale, in modo da poter migliorare l'accuratezza dei risultati per entrambe le piattaforme.
Correzioni
- Aggiornamenti per migliorare le prestazioni e l'accuratezza delle seguenti regole: Contrasto del Colore, Dimensione del Target Touch, Etichetta nel Nome, Etichetta Davanti, Nome Modificare Testo e Controllo Attivo Annidato
- Aggiunto il nome della classe della vista sovrapposta ai valori analizzati per la regola Spaziatura Target Touch per aiutare con il debug
- Descrizioni dei risultati riviste per essere più descrittive e fornire migliori indicazioni su come risolvere i problemi per le regole Azione Inaccessibile ed Etichetta Davanti
- Migliorata la stabilità e l'affidabilità del servizio di accessibilità. L'applicazione non chiederà più nuovamente le autorizzazioni ogni volta che viene utilizzata
- Ottimizzate le richieste di rete per il caricamento dei risultati sulla dashboard
- Migliorata la gestione degli errori di autenticazione nel Driver Appium
Deprecazioni
Dopo attenta considerazione, ci stiamo muovendo verso un'implementazione semplificata di Axe DevTools per Android che porterà alla deprecazione delle API XML e Compose in una data futura. Sebbene questa transizione non avverrà da un giorno all'altro, incoraggiamo i clienti a passare gradualmente alle API indipendenti dal layout per continuare a ricevere supporto e accedere agli ultimi aggiornamenti.
Problemi noti
Se si verificano uno dei problemi seguenti, contattaci a helpdesk@deque.com o support.deque.com. Saremo quindi in grado di informarti una volta risolto o di un workaround identificato se nessuno è elencato.
- Il test automatizzato di Axe DevTools Mobile è eseguito su applicazioni iOS native, Android native e React Native. Contatta il tuo rappresentante Deque per soluzioni di test di accessibilità sul tuo stack tecnologico.
- Sebbene tu possa ottenere alcuni risultati da visualizzazioni web o PDF resi, consigliamo vivamente di testare utilizzando Axe DevTools for Web o Axe Monitor per il test di accessibilità web più completo.
iOS
Errore nel Progetto Analyzer e Test tramite ID Bundle in 2.8.1
La funzionalità di testare un'applicazione tramite identificatore di bundle è stata interrotta nella versione 2.8.1, risultando in un errore intitolato "Nessun percorso applicazione di destinazione specificato tramite configurazione del test: ...". Aggiorna alla versione 2.8.2 o più recente per risolvere l'errore. Aggiorna all'ultima versione all'interno del progetto iOS Analyzer.
Falso positivo: LabelInName e LabelAtFront in SwiftUI e App multipiattaforma
Alcuni schermi possono riportare falsi positivi con LabelInName e LabelAtFront a causa di una proprietà associatedText errata trovata (#1622)
La regola Supporta Type Dinamico non funziona con il simulatore iOS 15 Pro
C'è un problema che interessa il simulatore iPhone 15 Pro che impedisce l'esecuzione della regola Supporta Type Dinamico. Se hai aderito alla regola Supporta Type Dinamico, non potrai testarla utilizzando un simulatore iPhone 15 Pro. Un bug è stato segnalato ad Apple.
Regole contro i Controlli Annidati
Durante un miglioramento delle nostre regole, abbiamo scoperto che in XCTest, i controlli annidati non vengono restituiti nell'albero di accessibilità. Un bug è stato segnalato ad Apple. (#1110)
La regola Nome ImageView richiede la revisione dei risultati per le app UIKit
Nelle app UIKit, un'immagine senza un `accessibilityLabel` non è focalizzabile con la tecnologia assistiva per impostazione predefinita.
Le proprietà che utilizziamo per controllare la focalizzabilità da Apple possono essere inaccurate quando viene impostato un `accessibilityIdentifier` sull'immagine. A causa di questo comportamento imprevisto, i risultati per i problemi Nome ImageView nelle app UIKit verranno riportati come da revisione. Un rapporto di bug è stato depositato presso Apple. (#1633)
Falso positivo: In Scroll View, Label In Name, Label at Front, e Nome Visualizzazione Immagine & Nome Controllo Attivo v2.11.0
Stiamo attivamente lavorando a correzioni per i seguenti falsi positivi e aggiorneremo questo elenco man mano che verranno rilasciati.
In Scroll View
Può segnalare problemi per il testo all'interno di elementi comportanti come banner. Per rendere questi elementi disponibili a coloro che richiedono un testo più grande, utilizzare 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, ActiveControlName può riportare un falso positivo sull'UIImageView. Rimuovere l'`accessibilityIdentifier` risolve il problema. Un bug è stato segnalato 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 vista, il testo vicino errato potrebbe essere rilevato causando il fallimento di queste regole. (#1622)
Android
App Analyzer: Floating Action Button scompare
Introdotta con l'API 31 (Android 12) è la possibilità di nascondere gli overlay non di sistema. Per poter utilizzare l'app Axe Analyzer, assicurati che questa impostazione non sia attivata. Se hai scelto di utilizzare questa funzione per i suoi miglioramenti in termini di sicurezza, ti consigliamo di disattivarla per le build di test interne, dove puoi utilizzare dati di test in sicurezza 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 qualsiasi chiamata al metodo setHideOverlayWindows(true) su tutte le finestre di attività coinvolte. setHideOverlayWindows(false) Screenshot Mancante (Schermata Nera) nel Dashboard
Per sbloccare la piena funzionalità di Axe DevTools per Mobile, assicurati che gli screenshot siano abilitati. Si consiglia di abilitare gli screenshot su una versione di debug o di test della tua app che utilizza dati mock per evitare problemi di sicurezza. Consulta la nostra guida per
abilitare gli screenshot nelle app Android. Crash quando `minifiedEnabled` è impostato a true
Se comprimi la tua build, noterai un crash con un log di errore che segnala che un adattatore non è stato trovato quando si tenta di accedere alla libreria Axe DevTools. Disabilita la riduzione per le tue build di debug con Axe DevTools implementato. (#729)
Build con r8 abilitato generano un errore
Una build con r8 abilitato può tentare di ridurre la libreria axeDevTools, causando un errore simile a:
Messaggio di 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.** { *; }
o:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
Le API Compose sono deprecate, utilizza per favore le No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?
API agnostiche rispetto al layout per continuare a ricevere aggiornamenti. Se continui a utilizzare le API Compose e incontri 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 API Compose setTestTag .Messaggio di log:
Se incontri questo messaggio, alcuni risultati delle regole potrebbero non essere restituiti come previsto quando quella regola utilizza l'intelligenza artificiale. Le regole interessate includono Contrasto dei Colori, Testo Focalizzabile e Nome dell'Elemento Nidificato. (#841)MlKitContext has not been initialized
MAUI: Regola Nome Testo Modifica
A causa di limitazioni dell'architettura app MAUI nel rendering nell'ecosistema Android, la regola Nome Testo Modifica verrà mostrata 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 per questo caso.
Android Nativo: Dialoghi / Modali Personalizzati
Quando implementi dialoghi o modali personalizzati che non estendono i controlli nativi, potresti ottenere risultati per le viste dietro il modale. In questo caso, consigliamo di non eseguire il nostro strumento su questi modali o dialoghi personalizzati e invece controllarli manualmente per assicurarci che si comportino con la tecnologia assistiva come desiderato.
Dashboard Web
Screenshot Mancante
Se lo screenshot non è presente nella pagina dei dettagli della scansione, la tua app potrebbe impedire la cattura degli screenshot. Spesso questo avviene per motivi di sicurezza nella tua applicazione di 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.
Android - FLAG_SECURE
Alcuni nomi di scansioni Android predefiniti al titolo della schermata appariranno come il nome completo della classe inclusa l'identificativo del bundle. In un futuro rilascio, questo verrà risolto in modo che il titolo della schermata sia formattato in un nome più leggibile. Come soluzione temporanea, puoi impostare il nome della scansione dal dashboard o dai framework. (#1643)
Some Android scan names that are defaulted to the screen title will appear as the full class name including the bundle identifier. In a future release, this will be resolved so that the screen title is formatted into a more readable name. As a workaround, you can set the scan name from the dashboard or frameworks. (#1643)
