Varredura Automática

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

Identifique automaticamente problemas de acessibilidade à medida que seus testes de UI existentes interagem com seu aplicativo

Not for use with personal data

Visão Geral

A Varredura Automática identifica automaticamente problemas de acessibilidade à medida que seus testes existentes do Espresso ou UIAutomator interagem com seu aplicativo, sem a necessidade de adicionar chamadas de verificação individuais ou modificar seus testes. A Varredura Automática escuta mudanças de tela e verifica cada tela única automaticamente.

tip

Se você precisar de controle mais granular em seus testes, consulte Testes direcionados.

Como funciona

Nosso plugin Gradle substituirá o seu runner de instrumentação JUnit pelo nosso runner personalizado. Isso nos permite observar sua suíte de testes e processar seus resultados no momento apropriado. Obtenha o plugin Gradle AxeDevToolsMobile. Quando o teste termina, a Varredura Automática processa seus resultados e salva um resultado JSON para cada tela, assim como um relatório HTML autossuficiente em AxeDevToolsMobileResults, e opcionalmente envia os resultados para o Developer Hub.

Começando

  1. Alguns valores precisam ser definidos para configurar e autenticar usuários. Recomendamos adicioná-los como variáveis de ambiente no seu computador e nos seus pipelines CI/CD para manter suas chaves seguras.

    Groovy (build.gradle):

    axeDevTools {
        axeMobileApiKey = ''
        axeAutoScanMode = true
        axeProjectId = ''
    }

    Kotlin DSL (build.gradle.kts):

    axeDevTools {
        axeMobileApiKey = ""
        axeAutoScanMode = true
        axeProjectId = ""
    }
  2. Se você estiver usando nossas ferramentas e preferir obter resultados em modo offline, você precisará definir um valor para o axeOfflineLicenseKey em vez de axeMobileApiKey e axeProjectId.

    Groovy (build.gradle):

    axeDevTools {
        axeOfflineLicenseKey = ''
        axeAutoScanMode = true
    }

    Kotlin DSL (build.gradle.kts):

    axeDevTools {
        axeOfflineLicenseKey = ""
        axeAutoScanMode = true
    }

Interpretando Resultados

Resumo do Console

Assim que a suíte de testes termina, você pode ver algum pós-processamento em seus logs do Gradle, seguido de um resumo.

HTML rule report written to: /Users/user/Documents/workspace/android/project-name/app/build/reports/AxeDevToolsMobileResults/AxeDevToolsMobile_1773882427726.html
---- Axe DevTools Mobile Accessibility Summary ----
Scan 1:
  Screen: Home Page
  Issues: 6
  Issues by rule:
    - TouchSizeWcag: 3
    - LabelAtFront: 1
    - LabelInName: 1
    - FocusableText: 1
    
Scan 35:
  Screen: Wikipedia Alpha
  Issues: 5
  Issues by rule:
    - LabelAtFront: 1
    - LabelInName: 1
    - TouchTargetSpacing: 1
    - TouchSizeWcag: 1
    - ColorContrast: 1
    
Total Scans: 35
❌ Total Issues: 123
---------------------------------------------------

Arquivos de Saída

A Varredura Automática gera um relatório HTML autossuficiente com capturas de tela, dados da hierarquia de visualização e informações detalhadas sobre os problemas. Resultados JSON individuais são salvos no axe-test-data diretório. Todos os arquivos são salvos no app/build/reports/AxeDevToolsMobileResults diretório.

Arquivo Formato
AxeDevToolsReport.html Relatório HTML interativo com problemas por tela, detalhes dos elementos, níveis de impacto, hierarquia de visualização
<timestamp>-axe-node-hierarchy.json Resultado JSON individual - 1 para cada varredura realizada

Suporte à Varredura Automática

Regras

A Varredura Automática executa o conjunto completo de regras do Axe, com exceção de ScreenOrientation e todas as regras experimentais (por exemplo, NestedActiveControl, NestedElementName, InaccessibleAction). Encontre informações detalhadas sobre o que verificamos em Visão Geral das Regras para Android.

Central de Desenvolvedores

O Auto Scan carrega automaticamente seus resultados para o Axe Developer Hub. Se você deseja salvar os resultados apenas localmente, defina axeUploadResults para false.

Referência de Configuração

Propriedades

Propriedade Tipo Obrigatório Detalhes
axeAutoScanMode Booleano Obrigatório Padrão é false. Deve ser definido como true para ativar o auto scan.
axeUploadResults Booleano Opcional Padrão é true. Defina como false para resultados apenas locais
axeMobileApiKey String Opcional Uma chave de API do Axe DevTools Mobile de axe.deque.com é obrigatória se axeUploadResults=true
axeProjectId String Opcional Um ID do Projeto da Central de Desenvolvedores é obrigatório se axeUploadResults=true
axeServerUrl String Opcional URL personalizado do backend, apenas para nuvem privada/local
axeOfflineLicenseKey String Opcional Somente necessário para modo offline, quando axeUploadResults=false

Melhores Práticas

Desativar Animações

Obtenha os resultados mais precisos e abrangentes do Auto Scan desativando a animação. Isso garantirá que as telas estejam totalmente renderizadas quando capturadas. Se as animações não forem desativadas, você poderá notar:

  • Scans duplicados que você acredita que deveriam ter sido descartados
  • Scans com capturas de tela mostrando um estado transitório
  • Uma taxa de captura de tela significativamente menor do que você esperava

Solução de Problemas

Se você não estiver vendo as verificações aparecerem no Developer Hub, deve verificar seus logs em busca de pistas do que pode estar errado ou passar por esta lista de verificação.

  • Verifique se axeAutoScanMode=true no seu axeDevTools bloco de configuração
  • Certifique-se de que conseguiu obter nossa dependência do Maven Central
  • Certifique-se de que está usando a variável correta para sua Chave de API/Licença e ID do Projeto
  • Verifique o tamanho dos seus arquivos de saída. O upload para o Developer Hub falha se o tamanho de qualquer um dos arquivos de resultado for maior que 20MB, embora todos os resultados ainda sejam salvos localmente e exibidos no relatório HTML local.

O que vem a seguir?

Você pode ver seus resultados no Axe Developer Hub. Aprenda a integrar o Axe DevTools Mobile em seu pipeline de CI/CD. Está usando uma plataforma de teste baseada em nuvem? Você ainda pode usar o Axe DevTools Mobile para procurar problemas de acessibilidade: Integrar com Plataformas em Nuvem.