Notas de Lançamento do axe DevTools Mobile de 6 de novembro de 2025

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

6 de novembro de 2025

Not for use with personal data

Versões dos Componentes

iOS

  • iOS SDK (axeDevToolsXCUI v3.0.1)
  • iOS Analyzer Projeto Xcode (axe-devtools-mobile-analyzer v1.7.0)
  • iOS Analyzer Aplicativo Desktop (axe-devtools-mobile-desktop-app v1.0.1)
  • iOS Appium 2 Driver (axe-appium-xcuitest-driver v2.1.0)
    • (Derivado de XCUITest v9.10.4)
  • iOS Appium 3 Driver (axe-appium3-xcuitest-driver v1.0.0)
    • (Derivado de XCUITest v10.4.3)

Como atualizar: iOS SDK, iOS Analyzer (Alterne para o Aplicativo Desktop Mobile Analyzer), iOS Appium Driver

Android

  • Android SDK (axe-devtools-android v8.0.2)
  • Android Analyzer (axe Accessibility Analyzer v2.1.3)
  • Android Appium 2 Driver (axe-appium-uiautomator2-driver v2.1.0)
    • (Derivado de UiAutomator2 v4.2.8)
  • Android Appium 3 Driver (axe-appium3-uiautomator2-driver v1.0.0)
    • (Derivado de UiAutomator2 v5.0.1)

Como atualizar Android-SDK, Android Analyzer, Android Appium Driver

Destaques

Atualizações nas habilidades de varredura móvel existentes e na capacidade de organização de resultados

Aplicativo Desktop iOS Mobile Analyzer

Com nosso aplicativo desktop para Mac fácil de usar, você pode se conectar facilmente ao seu dispositivo para testes, sem a necessidade de um ID de Bundle ou Chave de API. Se você estava usando o projeto iOS Analyzer Xcode, saiba Como Alternar para o Aplicativo Desktop Mobile Analyzer.

Integração com o axe Developer Hub

Envie resultados de acessibilidade dos seus testes automatizados para o axe Developer Hub - um local central para visualizar e gerenciar problemas de acessibilidade, onde as varreduras são automaticamente agrupadas por execução de teste. Embora você ainda possa encontrar resultados tanto no Mobile Dashboard quanto no Developer Hub, o Dashboard será eventualmente descontinuado em favor do Developer Hub. Se você ainda está usando o Dashboard para resultados de testes automatizados, saiba Como Alternar para o axe Developer Hub.

Correções

iOS

  • Melhorias na precisão das seguintes regras: Tamanho do Alvo de Toque e Espaçamento do Alvo de Toque

Android

  • Atualizações na coleta de dados de visualização no Aplicativo axe Accessibility Analyzer
  • Melhorias na precisão das seguintes regras: Nome no Rótulo, Nome do Elemento Aninhado e Nome do Interruptor

CLI do axe DevTools Reporter

Atualizações

Drivers Appium

Para manter a compatibilidade retroativa com o Appium 2 e também oferecer suporte ao Appium 3, agora lançaremos dois drivers Appium separados para cada plataforma. Os nomes de pacotes atuais voltarão a oferecer suporte ao Appium 2 e continuarão com as versões 2.x.x. Os novos pacotes serão chamados de axe-appium3 e começarão com a versão 1.0.0.

iOS

Android

Problemas Conhecidos

Se você estiver enfrentando algum dos problemas abaixo, entre em contato conosco pelo helpdesk@deque.com ou support.deque.com. Assim, poderemos notificá-lo assim que o problema for resolvido ou se encontrarmos uma solução alternativa, caso nenhuma esteja listada.

important
  • Os testes automatizados do axe DevTools Mobile funcionam em aplicativos nativos de iOS, Android nativo e React Native. Entre em contato com seu representante Deque para obter soluções de teste de acessibilidade para a sua stack tecnológica.
  • Embora você possa obter alguns resultados de visualizações web ou PDFs renderizados, recomendamos fortemente testar usando o axe DevTools para Web ou o axe Monitor para obter os testes de acessibilidade mais abrangentes para a web.

iOS

Propriedade isVisible imprecisa do XCTest

As APIs de acessibilidade da Apple podem reportar incorretamente o conteúdo da web dentro do WKWebView como "isVisible", mesmo quando a visualização web está coberta por sobreposições nativas (como visualizações modais, alertas ou outros elementos de UI nativa). Isso ocorre porque o sistema de acessibilidade verifica se o contêiner do WKWebView está visível, em vez de verificar se o conteúdo da web está realmente desobstruído e perceptível para o usuário.

Erro de acessibilidade do iOS 26 com steppers

O iOS 26 contém um erro de acessibilidade onde os botões padrão de stepper não anunciam "esmaecido" pela Tecnologia Assistiva para indicar que não estão habilitados. Como resultado, as regras do iOS também veem esses botões como habilitados, mesmo que não estejam. Um relatório de bug foi enviado à Apple, mas até que isso seja resolvido, as seguintes regras podem reportar resultados em botões de stepper desabilitados: AssociatedText, InaccessibleAction, e ColorContrast.

Até que a Apple corrija esse bug, a solução será [ignorar as regras](ios-ignore-rule). Os botões padrão de stepper têm os identificadores "Decrementar" e "Incrementar" e podem ser ignorados por identificador, se necessário.

Color Contrast rule does not run when text and background colors are the same

Our Color Contrast rule depends on Machine Learning to detect text, which ensures that the text being scanned is visible to users of your application. In cases where the text contained in a view is the same color as the background, our Machine Learning algorithm is unable to detect if any text is present, so the Color Contrast rule does not run on this view.

Incapacidade de Executar Scans em Dispositivos Físicos com iOS Analyzer 1.4.7

Uma configuração no iOS Analyzer 1.4.7 impede a execução de scans, retornando a mensagem "Teste Falhou". Para executar scans em um dispositivo físico, atualize para o projeto mais recente do iOS Analyzer.

Erro no Projeto do Analyzer e Teste por ID de Pacote na versão 2.8.1

A funcionalidade de testar um aplicativo pelo identificador de pacote foi quebrada na versão 2.8.1, resultando em um erro chamado "No target application path specified via test configuration: ...". Atualize para a versão 2.8.2 ou mais recente para resolver o erro. Atualize para a versão mais recente do projeto iOS Analyzer.

Erro "Não foi possível Serializar AxeResult" no Projeto do Analyzer v1.2.0 e SDK v2.12.3

Escanear alguns aplicativos com esta versão do analyzer e SDK resultaria em um "Could not Serialize AxeResult" erro. Atualize para a versão mais recente para resolver o erro. Atualize para o projeto mais recente do iOS Analyzer.Atualize para o SDK mais recente do iOS.

Falso Positivo: LabelInName e LabelAtFront em Apps SwiftUI e Multiplataforma

Algumas telas podem reportar falsos positivos com LabelInName e LabelAtFront devido a uma propriedade associatedText incorreta encontrada (#1622)

Regra Suporta Tipo Dinâmico não funciona com simulador iOS 15 Pro

Há um problema afetando o simulador do iPhone 15 Pro que impede a execução da regra Suporta Tipo Dinâmico. Se você aderir à regra Suporta Tipo Dinâmico, não poderá testá-la usando um simulador iPhone 15 Pro. Um bug foi reportado à Apple.

Regras contra Controles Aninhados

Enquanto buscávamos uma melhoria para nossas regras, descobrimos que no XCTest os controles aninhados não são retornados na árvore de acessibilidade. Um bug foi reportado à Apple. (#1110)

Regra de Nome para ImageView Precisa Revisar Resultados para Aplicativos UIKit

Em aplicativos UIKit, uma imagem sem um accessibilityLabel não é focalizável com tecnologia assistiva por padrão.
As propriedades que usamos para verificar a capacidade de focalização da Apple podem ser imprecisas quando um accessibilityIdentifier é definido na imagem. Devido a esse comportamento inesperado, os resultados para problemas de Nome de ImageView em aplicativos UIKit serão relatados como Necessário Revisão. Um relatório de bug foi registrado com a Apple. (#1633)

Falso Positivo: Em Scroll View, Label In Name, Label at Front, e Nome da ImageView & ActiveControlName v2.11.0

Estamos trabalhando ativamente em correções para os seguintes falsos positivos e atualizaremos esta lista à medida que as correções forem lançadas.

In Scroll View
Pode relatar problemas para texto dentro de elementos que se comportam como banners. Para tornar esses elementos disponíveis para aqueles que requerem texto maior, use UILargeContentViewer. (#622)

v2.11.0 Image View Name & Active Control Name
Se um UIImageView tiver um accessibilityIdentifier definido mas não for focalizável pelo VoiceOver, e tiver controles focalizáveis aninhados dentro dele, o ActiveControlName pode relatar um falso positivo no UIImageView. Remover o accessibilityIdentifier resolve o problema. Um bug foi registrado com a Apple. (#1633)

Label In Name and Label At Front
Estas duas regras procuram o rótulo visível de um controle entre elementos próximos para ajudar a determinar o status da regra. Em algumas hierarquias de visualização, o texto próximo incorreto pode ser detectado, fazendo com que essas regras falhem. (#1622)

Android

Regra de Contraste de Cor não é executada quando as cores do texto e do fundo são as mesmas

Nossa regra de Contraste de Cor depende de Aprendizado de Máquina para detectar texto, o que garante que o texto sendo verificado seja visível para os usuários de sua aplicação. Nos casos em que o texto contido em uma visualização seja da mesma cor que o fundo, nosso algoritmo de Aprendizado de Máquina não consegue detectar se algum texto está presente, então a regra de Contraste de Cor não é executada nesta visualização.

EditTextName no Android 7 (SDK 24-25)

Apps escritos com XML que utilizam o recurso de texto de dica podem ver falsos positivos com a EditTextName regra. Texto de dica não foi introduzido até o Android 8 (SDK 26). Usar este elemento em seu aplicativo XML atribuirá o texto de dica ao valor do campo de entrada de texto. Versões mais recentes do Android estão mais bem equipadas para tornar essa experiência acessível.

Para superar esse problema, nossa primeira recomendação é executar seus testes em versões mais recentes do Android. Se for importante que o aplicativo seja acessível em versões anteriores do Android, no entanto, você pode considerar evitar o uso do hintText recurso, pois não é oficialmente suportado.

Visualizações ocultas do Android retornando resultados

Você pode ver resultados para visualizações que estão ocultas atrás de outras visualizações na tela. Essas visualizações ocultas não estão disponíveis para a tecnologia assistiva, mas o axe DevTools Mobile ainda as reporta como problemas.

Estamos trabalhando em uma correção para esse problema complexo. Enquanto isso, se o TalkBack não puder alcançar essas visualizações, você pode desconsiderar os problemas correspondentes. Elas não precisam de uma correção para garantir acessibilidade.

Erro ao executar a Detecção de Texto com ML Kit

A detecção de texto com ML Kit é necessária em muitas das regras do axe DevTools Mobile para garantir a precisão dos resultados. A biblioteca ML Kit deve ser importada automaticamente ao referenciar axe DevTools Mobile em seus testes automatizados Espresso ou UIAutomator. No entanto, em alguns casos, a importação automática não ocorre e você verá o seguinte erro no logcat:

Axe DevTools Android: Error while running mlKit Text Detection: MlKitContext has not been initialized.

Para superar esse problema, você deve importar a biblioteca ML Kit para seu projeto manualmente. No build.gradle arquivo do seu aplicativo, adicione o seguinte em dependências:

implementation 'com.google.mlkit:text-recognition:16.0.1'
Espaçamento do Alvo de Toque e Jetpack Compose

A regra de Espaçamento do Alvo de Toque atualmente não está sendo executada em nenhum componente deslizante que foi escrito em Jetpack Compose. Nenhuma ação pode ser tomada neste momento. No entanto, uma correção está chegando em breve!

Erro ao salvar resultados localmente no API 30

No Android API 30, um dos locais em que tentamos salvar resultados localmente tem um erro de permissões. O resultado ainda será salvo como um arquivo JSON, apesar desse erro ser exibido. O erro pode ser suprimido comentando o código no seguinte bloco:
def clearDirectoryTask = task('clearDirectoryTask', type: Exec, group: 'reporting') {
executable "${android.getAdbExecutable().toString()}"
args 'shell', 'rm', '-r', '/storage/emulated/0/Documents/AxeTestCases'
// finalizedBy {
// fetchAndroidFolderAxeReportsTask
// }
}

Observe que este código deve ser comentado apenas para a API 30, pois causará problemas ao salvar localmente para outros níveis de API.

Detecção de rolagem em Apps Híbridos e de Plataforma Cruzada

Em alguns apps híbridos e de plataforma cruzada, podemos retornar resultados inesperados quando itens em uma visualização de rolagem estão parcialmente fora da tela. Para testar um elemento quanto à acessibilidade, certifique-se de que ele esteja totalmente na tela antes de realizar a verificação.

Aplicativo do Analizador: Botão de Ação Flutuante Desaparece

Introduzida com a API 31 (Android 12) está a capacidade de ocultar sobreposições não-sistema. Para utilizar o aplicativo axe Analyzer, certifique-se de que esta configuração não esteja ativada. Se você optou por utilizar este recurso por suas melhorias de segurança, recomendamos deixá-lo desligado para compilações de teste internas onde você pode usar dados de teste com segurança e assim eliminar preocupações de segurança. Note: this setting does not affect Google's accessibility scanner app as it's considered a system overlay.

Para utilizar o aplicativo axe Accessibility Analyzer, atualize quaisquer chamadas para o método setHideOverlayWindows(true) para setHideOverlayWindows(false) nas janelas de atividades afetadas.

Captura de Tela Ausente (Caixa Preta) no Dashboard

Para desbloquear a funcionalidade completa do axe DevTools para Mobile, certifique-se de que capturas de tela estejam habilitadas. Recomendamos habilitar capturas de tela em uma versão de depuração ou teste do seu aplicativo que utiliza dados simulados para evitar preocupações de segurança. Confira nosso guia para habilitar capturas de tela em aplicativos Android.

Erro quando `minifiedEnabled` está definido como verdadeiro

Se estiver minimizando sua compilação, você verá um crash com um log de erro relatando que um adaptador não pôde ser encontrado ao tentar fazer login na biblioteca axe DevTools. Desabilite a minificação para suas compilações de depuração com axe DevTools implementado. (#729)

Compilações com r8 habilitado apresentam um erro

Uma compilação com r8 habilitado pode tentar minimizar a biblioteca axeDevTools, resultando em um erro semelhante 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)
Para resolver esse erro, adicione a seguinte linha ao seu arquivo ProGuard para manter as classes axeDevTools:
keep class com.deque.** { *; }

Mensagem de erro semelhante a:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
ou: No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?

As APIs Compose estão obsoletas, por favor use as APIs independentes de layout para continuar recebendo atualizações. Se continuar a usar as APIs Compose e encontrar um erro do tipo `Esperado exatamente '1' nó mas encontrados '2' nós que satisfazem: (éRaiz)` ou `Nenhuma Visualização inicializada, você chamou AxeDevToolsCompose.setComposeTestRule()?`, por favor, consulte API Compose setTestTag.

Mensagem de log:MlKitContext has not been initialized

Se você encontrar esta mensagem, alguns resultados de regras podem não retornar como esperado quando essa regra utiliza inteligência artificial. As regras afetadas incluem Contraste de Cor, Texto Focável e Nome de Elemento Aninhado. (#841)

MAUI: regra Nome do Texto Editável

Devido a limitações da arquitetura de renderização do aplicativo MAUI no ecossistema Android, a regra Nome do Texto Editável aparecerá como Necessita Revisão no painel quando uma falha é suspeitada para a versão SDK 5.5.0 e superiores. Por favor, confirme o comportamento correto manualmente para este caso.

Android Nativo: Diálogos/Modais Personalizados

Quando você estiver implementando diálogos ou modais personalizados que não estendem os controles nativos, você pode obter resultados para visualizações por trás do modal. Neste caso, recomendamos não executar nossa ferramenta contra esses modais ou diálogos personalizados e, em vez disso, verificá-los manualmente para garantir que se comportem conforme desejado com tecnologia assistiva.

Painel Web

Captura de tela ausente

Se a captura de tela estiver ausente na página de detalhes da verificação, seu aplicativo pode estar impedindo que capturas de tela sejam feitas. Isso geralmente ocorre por razões de segurança em sua aplicação de produção. Considere remover esse requisito para a sua versão de teste para permitir a funcionalidade completa no Painel Mobile do axe DevTools.

Alguns nomes de verificação do Android estão sem formatação

Alguns nomes de verificação do Android, que por padrão são configurados para o título da tela, aparecerão como o nome completo da classe, incluindo o identificador do pacote. Em uma versão futura, isso será resolvido para que o título da tela seja formatado em um nome mais legível. Como uma solução alternativa, você pode definir o nome da verificação a partir do painel ou dos frameworks. (#1643)