Semântica

Os testes de IU no Compose usam semântica para interagir com a hierarquia da IU. A semântica, como o nome indica, dá um significado para uma parte da IU. Nesse contexto, uma "parte da IU" (ou elemento) pode significar qualquer coisa, desde um único elemento combinável até uma tela cheia. A árvore semântica é gerada junto com a hierarquia da IU e a descreve.

Saiba mais sobre semântica em Semântica no Compose.

Diagrama mostrando um layout típico de IU e a maneira como esse layout seria mapeado para uma árvore semântica correspondente

Figura 1. Uma hierarquia de IU típica e a árvore de semântica dela.

O framework de semântica é usado principalmente para acessibilidade. Portanto, os testes aproveitam as informações expostas pela semântica sobre a hierarquia da IU. Os desenvolvedores decidem o que e quanto precisa ser exposto.

Um botão com elemento gráfico e texto

Figura 2. Um botão típico com um ícone e um texto.

Por exemplo, considerando um botão como este, que consiste em um ícone e um elemento de texto, a árvore semântica padrão contém apenas o rótulo de texto "Like". Isso ocorre porque alguns elementos que podem ser compostos, como Text, já expõem algumas propriedades à árvore semântica. É possível adicionar propriedades à árvore semântica usando um Modifier.

MyButton(
    modifier = Modifier.semantics { contentDescription = "Add to favorites" }
)

Outros recursos

  • Testar apps no Android: a página de destino principal de testes do Android oferece uma visão mais ampla dos fundamentos e técnicas de teste.
  • Conceitos básicos de testes: Saiba mais sobre os conceitos básicos por trás dos testes de um app Android.
  • Testes locais: é possível executar alguns testes localmente, na sua estação de trabalho.
  • Testes de instrumentação: também é recomendável executar testes de instrumentação. Ou seja, testes executados diretamente no dispositivo.
  • Integração contínua: A integração contínua permite integrar os testes ao pipeline de implantação.
  • Testar diferentes tamanhos de tela: Com tantos dispositivos disponíveis para os usuários, é recomendável testar diferentes tamanhos de tela.
  • Espresso: embora seja destinado a IUs baseadas em visualização, o conhecimento do Espresso ainda pode ser útil para alguns aspectos dos testes do Compose.