Notas de Lançamento do axe DevTools Mobile de 30 de Agosto de 2023

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

30 de Agosto de 2023

Not for use with personal data

Versões dos Componentes

  • axeDevToolsXCUI v2.7.0
  • axe-devtools-android v4.1.0
  • axe DevTools Reporter CLI v4.7.0

O que há de novo?

O WCAG 2.2 está atualmente no status de Recomendação Proposta. Os resultados da regra do WCAG 2.2, "Espaçamento do Alvo Tátil", serão marcados como Experimentais até que o WCAG 2.2 atinja o status de Recomendação. Isso significa que os resultados desta regra agora aparecerão em suas contagens de Falha, Aprovação e Revisão Necessária sob o cabeçalho Experimental. (Esta regra aparecia anteriormente na contagem Ignorada.) Você também pode desativar regras experimentais, se preferir. Saiba mais sobre regras experimentais.

Android

  • Agora você pode ignorar regras em seus Testes de UI automatizados (Espresso ou UI Automator) usando o Nome do Recurso de ID da Visualização. Use isso para ignorar regras ao passar no Registro de Instrumentação.

iOS

Reporter CLI

Correções de Bugs

iOS

  • Precisão dos resultados melhorada quando os controles estão desativados.
  • Regra de "Contraste de Cor" atualizada para garantir que não seja executada em visualizações esmaecidas atrás de um modal.
  • Chamadas de atualização de nome e tag de digitalização combinadas em uma solicitação de rede para melhorar o desempenho.

Android

  • Testes do UI Automator agora esperarão a atualização da janela ser concluída antes de digitalizar para evitar capturar uma captura de tela desatualizada.
  • Corrigido um falso positivo na regra "Nome do Texto Editável" para Compose. Esta regra não reportará mais uma falha quando um Compose TextField contém um rótulo.
  • Corrigida a regra "Valor do Texto Editável" para executar em todos os elementos Compose TextField.
  • Corrigido um problema de cálculo com a regra "Espaçamento do Alvo Tátil".

Dashboard

  • Resolvido um problema da última versão que causava a alteração da ordem dos problemas dentro das digitalizações.

Atualizações

Lembrete: A partir de 16 de Ago. de 2023, paramos de lançar atualizações para o framework UIKit para testes automatizados em apps iOS. Continuaremos a oferecer este framework enquanto for viável, mas não faremos mais correções de bugs ou atualizações. Encorajamos a mudança para o framework XCUI, que será atualizado com novas regras e melhorias daqui em diante. Se você estiver usando o framework UIKit para testes automatizados de unidade ou UI e gostaria de suporte na transição para o framework XCUI, por favor, nos avise. Envie um pedido em support.deque.com, ou envie um email para helpdesk@deque.com.

Problemas Conhecidos

Se você está enfrentando algum dos problemas abaixo, por favor, entre em contato conosco em helpdesk@deque.com ou support.deque.com. Poderemos, então, 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 apps nativas iOS, Android nativo e React Native. Por favor, entre em contato com seu representante da Deque para soluções de teste de acessibilidade na sua stack de tecnologia.
  • Para apoiá-lo na obtenção de resultados precisos e conselhos de remediação aplicáveis, as regras do axe DevTools Mobile não são executadas em visualizações da web ou PDFs renderizados. Para testar conteúdo HTML, por favor, utilize o axe DevTools para Web. O axe Monitor suporta a digitalização de PDFs para acessibilidade.

axe DevTools Mobile para iOS

axeDevToolsUIKit.xcframework

Visualizações construídas com SwiftUI não podem ser testadas usando este framework para testes automatizados.

Use o framework axeDevToolsXCUI em UITesting para visualizações SwiftUI.

O suporte para regras personalizadas está disponível apenas em Swift

A API de regras personalizadas não está aberta para Objective-C.

Falsos Positivos: InScrollView, SupportsDynamicType, Visualizações Colidindo

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

InScrollView
O InScrollView pode relatar problemas para texto dentro de elementos que se comportam como banners. Para tornar esses elementos acessíveis para aqueles que necessitam de texto maior, use UILargeContentViewer.

SupportsDynamicType
Você pode ver falsos positivos nos seguintes cenários:

  • Se estiver usando a UIContentSizeCategoryDidChange notificação, o framework pode relatar incorretamente que o texto não responde ao Dynamic Type em UITests.
  • Se estiver usando NotificationCenter.default.addObserver(forName:.., object:.., queue:.., using:..) para responder à UIContentSizeCategoryDidChange notificação.
  • Se estiver usando traitCollectionDidChange na visualização pai de um texto ou no controlador de visualização para responder ao Dynamic Type.
Colliding Views
When a scrollable subview contains text, and that subview does not span to the edge of the screen's bounds, you will see failures for text located within the view's bounds.

axeDevToolsXCUI.xcframework

SwiftUI Picker e UIKit Picker

As visualizações de Picker no SwiftUI e UIKit podem fazer com que o framework fique travado em simuladores ou dispositivos. (#636)

Regras contra Controles Aninhados

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

Falso Positivo: In Scroll View, ActiveControlName

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 acessíveis para aqueles que necessitam de texto maior, use UILargeContentViewer. (#622) ActiveControlName
Se uma UIImageView tiver um `accessibilityIdentifier` definido, mas não for focável pelo VoiceOver, e tiver controles focáveis aninhados dentro dela, o ActiveControlName pode relatar um falso positivo na UIImageView. Remover o `accessibilityIdentifier` resolve o problema. (#1178)

Falso Negativo: Nome da View 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 uma UIImageView tiver um `accessibilityIdentifier` definido, mas não for focável pelo VoiceOver, o ImageViewName pode relatar um falso negativo na UIImageView. Remover o `accessibilityIdentifier` resolve o problema. (#1188) Focusable Text
Elementos marcados como não acessíveis podem relatar resultados inadequados devido a um bug no framework da Apple.

axe DevTools Mobile para Android

Falha ao usar Proguard

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

Falha quando `minifiedEnabled` está definido como verdadeiro

Se reduzir a sua compilação, 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 minificação para suas compilações de depuração com axe DevTools implementado. (#729)

Erros ao Compilar com Java8 Project e axe DevTools Android 3.1.0

Tente as seguintes importações:

implementation 'androidx.core:core-ktx:1.9.0'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4'
	
After importing the above library, if you see errors related to minSDK version for core-ktx library try the following in your project’s Android Manifest:
<uses-sdk tools:overrideLibrary="androidx.core" />

Compilações com r8 ativado geram 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)
	
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)

Se você encontrar um erro do tipo `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)`, por favor, entre em contato conosco em helpdesk@deque.com ou support.deque.com para assistência. Em certas condições, pode haver dois nós raiz do Compose existentes ao mesmo tempo.

Dashboard do axe DevTools Mobile

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

Alguns nomes de escaneamento do Android que estão definidos como padrão 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 escaneamento a partir do painel ou dos frameworks. (#1643)