android-ui-journey-testing
Ensina seu agente de IA a desenhar interfaces bonitas e fáceis de usar e testar o código e achar erros antes dos usuários.
O que ela faz
Esta ferramenta testa o funcionamento de um aplicativo Android. Ela segue uma sequência de passos definidos em um arquivo especial (XML) para ver se tudo funciona como esperado, como se um usuário estivesse usando o app.
Quando usar
- ✓Quando você quer testar se um app Android faz o que deveria.
- ✓Quando você precisa automatizar tarefas que envolvem vários cliques e verificações.
- ✓Quando você quer um relatório detalhado em formato de arquivo (JSON) sobre os testes.
Exemplo do que pedir para a IA
“Teste o fluxo de login e verifique se o nome de usuário aparece na tela inicial.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta lê um arquivo com instruções (XML) que diz o que fazer, como clicar em botões ou verificar se algo está na tela. Ela executa cada passo e anota se deu certo ou errado, gerando um relatório final.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill android-ui-journey-testingOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/android-ui-journey-testing/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Jornada de Testes de UI Android
Visão Geral
Esta habilidade descreve o fluxo de trabalho padrão para executar testes de Jornada de Usuário especificados em XML em aplicativos Android. Uma "jornada" é um conjunto sequenciado de ações do usuário e asserções de estado projetadas para verificar a funcionalidade de ponta a ponta. O XML da jornada atua como a fonte da verdade para o comportamento do aplicativo. O executor procede sequencialmente, realizando interações de UI, verificando asserções de estado e escrevendo um relatório de resultado JSON padronizado.
Quando Usar
- Use ao avaliar o comportamento da UI de um aplicativo Android em relação a uma especificação de teste em XML.
- Use ao automatizar fluxos de usuário de várias etapas (por exemplo, login, checkout, navegação) e verificar expectativas.
- Use ao executar testes de verificação e gerar relatórios de teste JSON padronizados.
- Use ao depurar fluxos de aplicativos em dispositivos físicos ou emuladores usando comandos ADB.
Como Funciona
graph TD
A[Parse Journey XML] --> B[Execute Action / Interaction]
B --> C{Success?}
C -- Yes --> D[Verify State Expectation / Assertion]
C -- No/Crash --> G[Mark FAILED & Exit]
D -- Passed --> E{More Steps?}
D -- Failed --> G
E -- Yes --> B
E -- No --> F[Output JSON Summary]
Etapa 1: Analisar a Especificação da Jornada
Leia e analise a estrutura do conjunto de testes XML. O nó raiz <journey> define o nome do caso de teste, e o bloco <actions> contém a sequência de etapas do teste.
<journey name="Search and Cart Flow">
<description>Verify that searching for an item and adding it to the cart succeeds.</description>
<actions>
<action>Search for soda</action>
<action>Tap the first search result</action>
<action>Verify that the product detail screen is shown</action>
</actions>
</journey>
Etapa 2: Avaliação Sequencial das Etapas
Processe cada elemento <action> na ordem exata especificada. As etapas de teste são classificadas em dois grupos:
A. Ações Interativas (Toques, Deslizamentos, Entrada de Texto)
Execute a interação física da UI usando ADB.
- Toque: Toque no centro dos limites do elemento alvo:
adb shell input tap <x> <y> - Deslizar/Rolar: Deslize de uma coordenada para outra com uma duração:
adb shell input swipe <x1> <y1> <x2> <y2> <duration_ms> - Digitar Texto: Digite texto no campo de entrada ativo:
adb shell input text "<string>"
Se o elemento estiver ausente ou a ação não puder ser executada, a ação e a jornada falharão.
B. Asserções de Estado (Verificação de Expectativas)
Etapas que começam com "verificar", "checar" ou "garantir" representam asserções de estado.
- Inspecione a tela atual (usando capturas de tela ou
uiautomator dump) sem interagir ou rolar. - Confirme se todas as sub-asserções são atendidas. Por exemplo, "Verificar se o aplicativo está na tela inicial e o logotipo está visível" falha se a tela inicial não for exibida ou o logotipo estiver ausente.
Etapa 3: Lidar com Falhas e Travamentos
Se o aplicativo travar, sair, congelar ou falhar em uma asserção:
- Pare imediatamente a execução da jornada.
- Marque a etapa com falha como
FAILED. - Marque quaisquer etapas subsequentes como
SKIPPED. - Documente o motivo exato da falha.
Etapa 4: Gerar Relatório JSON
Formate os resultados da execução em um esquema JSON padronizado e escreva-o no log de saída.
Exemplos
Exemplo 1: Especificação Completa da Jornada em XML
<journey name="Login and Profile Edit">
<description>Logs into the app, navigates to settings, and changes user profile information.</description>
<actions>
<action>Verify that the username input field is visible</action>
<action>Tap the username input field</action>
<action>Type "testuser" into the input</action>
<action>Tap the password input field</action>
<action>Type a redacted test password into the input</action>
<action>Tap the "Login" button</action>
<action>Verify that the Home dashboard is visible and user profile photo is shown</action>
</actions>
</journey>
Exemplo 2: Relatório de Resultado JSON Padrão
{
"journey": "Login e Edição de Perfil",
"results": [
{
"action": "Verificar se o campo de entrada de nome de usuário está visível",
"status": "PASSOU",
"commands": [],
"comment": "Entrada de nome de usuário detectada nos limites [100,200][980,300] via dump de UI."
},
{
"action": "Tocar no campo de entrada de nome de usuário",
"status": "PASSOU",
"commands": [
"adb shell input tap 540 250"
],
…
Perguntas frequentes
O que é um 'journey'?
É uma sequência de ações e verificações que simulam o uso de um aplicativo, como fazer login, adicionar um item ao carrinho, etc.
O que é o arquivo XML?
É um arquivo de texto que contém as instruções passo a passo para os testes. Ele diz o que o aplicativo deve fazer e o que verificar.
O que acontece se um teste falhar?
A ferramenta para a execução naquele ponto, marca o passo como falho e anota o motivo. Os passos seguintes são marcados como pulados.
Detalhes
Descrição original do autor
XML-specified Android UI journey testing, interactive step execution, assertion verification, and JSON outcome reporting.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2129
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
cpp-testing
Faz seu agente escrever e melhorar testes para código C++. Ajuda a configurar ferramentas de teste e a corrigir erros.
affaan-m/ECC
csharp-testing
Ajuda seu agente a criar testes para código C# e .NET. Ele usa as melhores práticas para garantir que os testes sejam eficientes e confiáveis.
affaan-m/ECC
django-tdd
Faz seu agente aplicar estratégias de teste para Django com pytest-django e TDD. É útil para escrever testes robustos e garantir a qualidade do código, especialmente para APIs DRF.
affaan-m/ECC