Comunidade

Tutorial: Um teste real, passo a passo

O tutorial do Medium detalha um processo passo a passo para configurar e escrever testes automatizados em aplicações mobile usando ferramentas como Appium, CodeGraph e pytest. Inclui etapas de configuração, escrita de testes, exploração da aplicação real, identificação de elementos e construção dos testes pytest, garantindo que cada passo seja documentado e revisado.

Compartilhar
Medium

Tutorial: Um teste real, passo a passo

1. Configuração inicial

/agentqa-init setup

Instala o Appium 2.x (XCUITest para iOS, UiAutomator2 para Android), agent-device (que controla o simulador/emulador), CodeGraph (que mapeia seu código-fonte) e pytest. Cada ferramenta é opcional — as habilidades funcionam sem elas, apenas com menos automação.

2. Configuração

/agentqa-init init

Escreve .agentqa/config.yml — a única fonte de verdade para tudo que é específico do aplicativo:

plataforma: ios
app_id:
bundle_id: com.example.MyApp
test_directory: AutomationTests
build_policy: human
reset_policy: reset_app_data: sempre
identifier_convention: screen_element_type
credentials:
username: MYAPP_TEST_USER
password: MYAPP_TEST_PASS

As credenciais são apenas nomes de variáveis de ambiente — nunca armazenadas, nem comprometidas.

3. Escreva um teste

/agentqa-write-test "log in with a valid account lands on the home tab"

Aqui está o que acontece em seguida:

01 — Mapeamento. Se o CodeGraph existir, o agente lê a gráfico de telas do seu código-fonte — um sentido em branco da navegação antes de tocar no dispositivo.

02 — Clarificação. A única coisa que nem o código nem o aplicativo podem dizer: o que significa 'passar'? Você fixa uma afirmação de uma frase. Tudo mais — telas, campos, botões — o agente descobre por conta própria.

03 — Exploração. O agente controla o aplicativo real. Ele abre o simulador, toca na tela de login, lê page_source em cada etapa. Se a build trocou login nativo por SSO web, ele se adapta durante exploração — não depois que o teste é escrito.

04 — Identificadores. Ele adiciona identificadores de acessibilidade seguindo sua convenção (login_phone_field, home_profile_button). Nenhuma exclusão — isso não altera nada sobre layout ou comportamento.

05 — Construção. Sob build.policy: human, o agente para e pede que você compile. Você constrói, entrega de volta. (Ou deixe o agente fazer com agent.).

06 — Verificar. Puxa novamente page_source. Confirma que cada identificador realmente existe. Só então escreve os localizadores.

07 — Escrever. Um teste pytest usando seus identificadores para telas que você possui, e predicados de rótulo visível para tudo mais (web views, diálogos do sistema).

08 — Loop verde:

pré-condições → pytest → diagnosticar a partir de artefatos salvos → corrigir → repetir

conftest.py salva page_source + captura de tela em cada falha. O agente diagnostica a partir da evidência, não do palpite. Passa ou o agente conclui que é um verdadeiro bug — o que é uma descoberta, não algo para enfraquecer a afirmação.

09 — Revisar. Você vê a diferença de código de aplicativo (apenas adições) e o teste gerado. Aprova ou rejeita.

10 — Capturar. Cada caminho de navegação, peculiaridade da tela e localização do identificador é salvo em .agentqa/memory/ como Markdown simples. A próxima execução continua onde esta parou.

4. Executar o conjunto de testes

/agentqa-write-test "executar o conjunto de login"

Modo lean (apenas saída pytest) ou diagnóstico completo (recorda falhas passadas, diagnostica a partir de artefatos, aprende novos padrões).

Fonte original

Conteúdo traduzido e adaptado pela redação do Notícias Mobile. Confira também a matéria na fonte original.

Leia a matéria completa