Notas de Lançamento do Axe DevTools Mobile - 20 de fevereiro 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

20 de fevereiro de 2025

Not for use with personal data

Versões dos Componentes

  • iOS SDK (axeDevToolsXCUI v2.14.0)
  • iOS Analyzer (axe-devtools-mobile-analyzer v1.4.8)
  • iOS Appium Driver (axe-appium-xcuitest-driver v1.2.0)

Como atualizar: iOS SDK, iOS Analyzer, iOS Appium Driver

O que há de novo?

iOS Appium Driver

O recurso Ignorar Regras agora está disponível para o driver Appium no iOS! Consulte nosso documentação de Ignorar Regras para Appium para obter informações de implementação. Para saber mais sobre como Ignorar Regras ao executar verificações de acessibilidade, veja nosso documentação de configuração do Appium.

iOS SDK

Tornamos as mensagens de log de rede mais descritivas. Anteriormente, todos os logs de sucesso incluíam apenas a mensagem 200 OK. Agora, você verá mensagens mais descritivas, como DEQUE LOG: 200 OK - User verified. Successfully logged in., impressas no console.

Correções para iOS

  • Melhorias na precisão das seguintes regras: Contraste de Cores, Texto Associado, Etiqueta no Nome e Etiqueta na Frente

Problemas Conhecidos

Se você está enfrentando algum dos problemas abaixo, entre em contato conosco através de helpdesk@deque.com ou support.deque.com. Poderemos notificá-lo assim que for resolvido ou de uma solução alternativa identificada, se nenhuma estiver listada.

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

iOS

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

Uma configuração no iOS Analyzer 1.4.7 impede a execução dos escaneamentos, retornando a mensagem "Teste Falhou". Para executar escaneamentos 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 em 2.8.1

A funcionalidade com teste de uma aplicação por identificador de pacote foi quebrada na versão 2.8.1, resultando em um erro intitulado "Nenhum caminho de aplicativo alvo especificado via configuração de teste: ...". Atualize para a versão 2.8.2 ou a versão mais recente para resolver o erro. Atualize para a versão mais recente dentro do projeto do iOS Analyzer.

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

Passar algumas aplicações com esta versão do analyzer e SDK resultaria em um erro "Não foi possível Serializar AxeResult". Atualize para a versão mais recente para resolver o erro. Atualize para o projeto mais recente do iOS Analyzer.Atualize para o SDK do iOS mais recente.

Falso Positivo: LabelInName e LabelAtFront em Aplicativos SwiftUI & Cross Platform

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

Regra de Suporte a Tipo Dinâmico não funciona com o simulador iOS 15 Pro

Há um problema que afeta o simulador do iPhone 15 Pro que impede a regra de Suporte a Tipo Dinâmico de ser executada. Se você estiver inscrito na regra de Suporte a Tipo Dinâmico, não será possível testá-la usando um simulador do iPhone 15 Pro. Um bug foi registrado com a Apple.

Regras contra Controles Aninhados

Ao procurar uma melhoria para nossas regras, descobrimos que, no XCTest, controles aninhados não são retornados na árvore de acessibilidade. Um bug foi registrado com a Apple. (#1110)

Resultados da Revisão das Regras de Nome em ImageView 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 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 reportados como Necessário Revisar. Um relatório de erro foi enviado para a Apple. (#1633)

Falso Positivo: In Scroll View, Label In Name, Label at Front, e Nome de Image View e ActiveControlName v2.11.0

Estamos trabalhando ativamente em correções para os seguintes falsos positivos e atualizaremos esta lista assim que as correções forem liberadas.

In Scroll View
Pode reportar problemas para textos dentro de elementos que se comportam como banner. Para tornar esses elementos acessíveis a quem necessita de texto maior, use UILargeContentViewer. (#622)

v2.11.0 Image View Name & Active Control Name
Se um UIImageView tem um `accessibilityIdentifier` definido, mas não é focalizável pelo VoiceOver, e possui controles focalizáveis aninhados dentro dele, o ActiveControlName pode reportar um falso positivo no UIImageView. Remover o `accessibilityIdentifier` resolve o problema. Um bug foi reportado para a Apple. (#1633)

Label In Name and Label At Front
Essas duas regras procuram pelo 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 incorreto próximo pode ser detectado, fazendo com que essas regras falhem. (#1622)

Android

Espaçamento do Alvo de Toque e Jetpack Compose

A regra de Espaçamento do Alvo de Toque atualmente não está funcionando em nenhum componente deslizante que foi escrito em Jetpack Compose. Nenhuma ação pode ser tomada no 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 onde tentamos salvar resultados localmente tem um erro de permissão. O resultado ainda será salvo como um arquivo JSON, apesar de esse 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
//    }
}

Please note that this code should only be commented out for API 30 as it will cause problems when saving locally for other API levels.

Detecção de Rolagem em Aplicativos Híbridos e Cross-Platform

Em alguns aplicativos híbridos e cross-platform, podemos obter resultados inesperados quando itens em uma visualização de rolagem estão parcialmente fora da tela. Para testar um elemento em termos de acessibilidade, certifique-se de que ele esteja totalmente na tela antes de realizar a varredura.

Aplicativo Analyzer: 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 app Axe Analyzer, certifique-se de que esta configuração não esteja ativada. Se você optou por utilizar este recurso para melhorias de segurança, recomendamos deixá-lo desativado para versões de teste internas, onde pode utilizar dados de teste com segurança e eliminar preocupações de segurança dessa forma. Note: this setting does not affect Google's accessibility scanner app as it's considered a system overlay.

Para utilizar o app Axe Accessibility Analyzer, atualize todas as chamadas para o método setHideOverlayWindows(true) para setHideOverlayWindows(false) nas janelas das atividades afetadas.

Captura de Tela Ausente (Caixa Preta) no Painel

Para desbloquear toda a funcionalidade 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 usa dados simulados para evitar preocupações de segurança. Confira nosso guia para habilitar capturas de tela em aplicativos Android.

Falha quando `minifiedEnabled` está definido como true

Se estiver minimizando seu build, verá um crash com um log de erro informando que um adaptador não pôde ser encontrado ao tentar acessar a biblioteca do Axe DevTools. Desative a minimização para seus builds de depuração com o Axe DevTools implementado. (#729)

Builds com r8 habilitado geram um erro

Um build com r8 habilitado pode tentar minimizar a biblioteca axeDevTools, resultando em um erro similar 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.** { *; }

Mensagem de erro similar 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 agnósticas de layout para continuar recebendo atualizações. Se você continuar a usar as APIs Compose e encontrar um erro como "Esperado exatamente '1' nó, mas encontrado '2' nós que satisfazem: (isRoot)" 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 regra podem não retornar como esperado quando essa regra estiver utilizando inteligência artificial. As regras afetadas incluem Contraste de Cor, Texto Focalizável e Nome de Elemento Aninhado. (#841)

MAUI: Regra de Nome do Texto de Edição

Devido a limitações da arquitetura de aplicativos MAUI ao renderizar no ecossistema Android, a regra de Nome do Texto de Edição será exibida como Necessário Revisar no painel quando uma falha for suspeitada para a versão do SDK 5.5.0 e superior. Por favor, confirme o comportamento correto manualmente para este caso.

Android Nativo: Diálogos / Modais Personalizados

Quando você está 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. Nesse 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 com a tecnologia assistiva conforme desejado.

Painel da 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 a captura de telas. Muitas vezes, isto é por motivos de segurança na sua aplicação de produção. Considere remover este requisito para sua versão de teste para permitir a funcionalidade completa no Painel do Axe DevTools Mobile.

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

Alguns nomes de scan do Android que são padronizados 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 solução alternativa, você pode definir o nome do scan a partir do painel ou das estruturas. (#1643)