Notas de Lançamento do axe DevTools Mobile de 28 de fevereiro de 2024

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

28 de fevereiro de 2024

Not for use with personal data

Versões dos Componentes

  • axeDevToolsXCUI v2.9.1
  • axe-devtools-android v5.2.0

O que há de novo?

Solução Appium Melhorada

  • Uma solução melhorada para o uso do Appium foi lançada em 14 de fevereiro. Veja as notas de lançamento.

Android

  • O método connect() para autenticar no servidor axe DevTools Mobile está sendo descontinuado em favor de loginWithUsername() ou loginWithApiKey(). Referência da API
  • Uma nova API agora está disponível e permite que você use tags de teste para localizar e verificar um composable específico em layouts do Jetpack Compose. Isso pode ser útil quando uma tela tem uma mistura de layouts Jetpack Compose e XML. Exemplo

Correções de Bugs

iOS

  • Corrigido um falso negativo com a regra Nome do Controle Ativo onde um searchBarTextField sem um rótulo acessível estava passando incorretamente pela regra.
  • Corrigido um falso positivo com a regra de Contraste de Cor em campos de texto quando o cursor está presente. Quando um campo de texto parece estar sendo editado, vamos colocá-lo no status “Precisa de Revisão” em vez de “Reprovado”.

Android

  • Corrigido um problema onde o Mobile Analyzer às vezes falhava ao analisar aplicativos multiplataforma.
  • Corrigidos falsos positivos com as regras de Texto Focável e Nome de Elementos Aninhados em execução para visões que não estavam visíveis para o usuário. A regra não será mais executada a menos que a visão esteja visível na tela.

Problemas Conhecidos

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

important
  • O teste automatizado do axe DevTools Mobile é executado em aplicativos iOS nativos, Android nativos e React Native. Por favor, entre em contato com seu representante Deque para soluções de teste de acessibilidade no seu stack tecnológico.
  • Embora você possa obter alguns resultados de visualizações na web ou PDFs renderizados, recomendamos altamente o teste usando axe DevTools para Web ou axe Monitor para o teste de acessibilidade mais abrangente para a web.

axe DevTools Mobile para iOS

Erro no Projeto do Analyzer & Teste por ID do Bundle em 2.8.1

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

Visões fora da tela podem mostrar resultados para aplicativos SwiftUI testados no iOS 17

Com a versão 2.8.0 (Ver Notas de Lançamento), os resultados não são mais reportados em visões que não são visíveis, incluindo fora da tela ou ocultadas por outra visão. Descobrimos que em aplicativos SwiftUI sendo testados no iOS 17, alguns resultados ainda aparecem. (#1383)

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

Há um problema afetando o simulador do iPhone 15 Pro que impede a execução da regra de Suporte a Tipo Dinâmico. Se você estiver inscrito na regra de Suporte a Tipo Dinâmico, não será capaz de 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)

Falso Positivo: Nome do Controle Ativo em Visão de Rolagem

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 reportar problemas para textos dentro de elementos com comportamento de banner. Para tornar esses elementos disponíveis para aqueles que necessitam de texto maior, use UILargeContentViewer. (#622) ActiveControlName
Se uma UIImageView tem um `accessibilityIdentifier` definido mas não é focalizável pelo VoiceOver, e tem controles focalizáveis aninhados dentro dela, o ActiveControlName pode reportar um falso positivo sobre a UIImageView. Remover o `accessibilityIdentifier` resolve a questão. Um bug foi registrado com a Apple. (#1226)

Falso Negativo: Nome da Visão de Imagem, Texto Focável no iOS 13 até iOS 14.8.1

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

Image View Name
Se um UIImageView possuir um `accessibilityIdentifier` definido, mas não puder ser focalizado pelo VoiceOver, o ImageViewName pode relatar um falso negativo no UIImageView. Remover o `accessibilityIdentifier` resolve o problema. Um bug foi registrado na Apple. (#1226) Focusable Text
Elementos marcados como não acessíveis podem relatar resultados incorretos devido a um bug no framework da Apple.

axe DevTools Mobile para Android

Falha ao usar Proguard

Se sua build de depuração ou teste estiver utilizando Proguard, siga os passos para ignorar a Deque em suas configurações do Proguard.

Falha quando `minifiedEnabled` está definido como true

Se minimizar sua build, você verá uma falha com um log de erro relatando que um adaptador não pôde ser encontrado ao tentar fazer login na biblioteca axe DevTools. Desative a minimização para suas builds de depuração com axe DevTools implementado. (#729)

Builds com r8 habilitado geram um erro

Uma build 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)
	
To resolve this error add the following line to your ProGuard file to keep axeDevTools classes:
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()?

Se você encontrar um erro semelhante a `Esperado exatamente '1' nó, mas foram encontrados '2' nós que satisfazem: (isRoot)` ou `Nenhuma Visualização inicializada, você chamou AxeDevToolsCompose.setComposeTestRule()?`, por favor, consulte a API Compose setTestTag.

axe DevTools Mobile Dashboard

Captura de Tela Ausente

Se a captura de tela estiver ausente na página de detalhes da varredura, seu aplicativo pode estar impedindo que capturas de tela sejam tiradas. Frequentemente isso ocorre por razões de segurança em seu aplicativo de produção. Considere remover essa exigência para sua build de teste para permitir funcionalidade total no axe DevTools Mobile Dashboard.

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

Alguns nomes de varredura 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 futura versão, 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 da varredura a partir do dashboard ou frameworks. (#1643)

axe DevTools Mobile para Appium

Falso Positivo: Nome da Visualização Ativa

Devido a limitações nas informações disponíveis via a plataforma Appium, identificamos um falso positivo para Nome da Visualização Ativa ao usar a labeledBy propriedade para fornecer um rótulo para um elemento de botão. Estamos explorando soluções e esperamos um correção em uma futura atualização.

React Native: Rótulo No Nome & Rótulo No Início

Devido a limitações nas informações disponíveis via a plataforma Appium, identificamos que as regras Rótulo No Nome & Rótulo No Início não conseguem ser executadas para aplicativos construídos com React Native. Estamos explorando soluções e esperamos uma correção em uma futura atualização.

React Native: Inspecionar Hierarquia de Visualização Mostrando Tela Anterior

Às vezes, a propriedade page source do Appium precisa de tempo extra para ser atualizada entre as varreduras. Se isso acontecer, você verá a hierarquia de visualização de uma tela anterior ao usar o recurso de inspeção no dashboard. Para corrigir, adicione um pequeno tempo de espera antes de chamar a API page source para iniciar a varredura de acessibilidade. Exemplo:

			await driver.pause(1000);
    		const result = await driver.getPageSource();