QANode Logo

Execução e Depuração

Aprenda como executar seus fluxos, interpretar resultados e diagnosticar falhas.


Executando um Fluxo

Execução Completa

Para executar todo o fluxo:

  1. Certifique-se de que o fluxo está salvo
  2. Clique no botão Executar (▶️) na barra superior
  3. Aguarde a conclusão — os nós exibirão indicadores de status em tempo real

Imagem: Canvas mostrando nós com indicadores de status durante a execução

Status de Execução

StatusIndicadorDescrição
Executando🔵 Azul/PulsanteO nó está sendo processado
Sucesso🟢 VerdeO nó foi executado com sucesso
Falha🔴 VermelhoO nó encontrou um erro
Pulado⚪ CinzaO nó não foi executado (branch inativo)

Analisando Resultados

Após a execução, clique em qualquer nó para ver seus resultados no painel de propriedades:

Aba de Resultados

SeçãoDescrição
StatusSucesso ou falha, com duração
LogsMensagens registradas durante a execução do nó
OutputsDados produzidos pelo nó (JSON navegável)
ErroMensagem de erro detalhada (quando aplicável)
ScreenshotsCapturas de tela (nós web com evidência ativada)

Outputs

Os outputs de cada nó ficam acessíveis para nós seguintes via expressões. Por exemplo, após executar um HTTP Request, os outputs serão:

{
  "status": 200,
  "body": "...",
  "json": {
    "id": 1,
    "name": "João",
    "email": "joao@exemplo.com"
  }
}

Você pode então acessar esses dados em nós seguintes:

{{ steps["http-request"].outputs.json.name }}  →  "João"
{{ steps["http-request"].outputs.status }}     →  200

Screenshots (Evidências)

Para nós web (Web Flow e Smart Locators), screenshots capturados aparecem como miniaturas clicáveis. Clique para ver em tamanho completo.


Depurando Falhas

Identificando o Nó com Problema

  1. Procure nós com borda vermelha (🔴) no canvas
  2. Clique no nó com falha
  3. Verifique a mensagem de erro e os logs

Mensagens de Erro Comuns

Web Flow / Smart Locators

ErroCausaSolução
Timeout waiting for selectorElemento não encontrado na páginaVerifique o seletor/localizador; aumente o timeout
Element not visibleElemento existe mas não está visívelAdicione um passo de wait ou scroll antes
Navigation timeoutPágina não carregou a tempoVerifique a URL e a conectividade
Element is not attached to DOMElemento removido antes da açãoAdicione um wait para estabilidade

HTTP Request

ErroCausaSolução
ECONNREFUSEDServidor não está acessívelVerifique a URL e se o servidor está rodando
401 UnauthorizedAutenticação inválidaVerifique token/credenciais
ETIMEOUTRequisição excedeu o tempo limiteAumente o timeout ou verifique o servidor

Banco de Dados

ErroCausaSolução
Connection refusedBanco não acessívelVerifique host, porta e firewall
Authentication failedCredenciais inválidasVerifique usuário e senha
Relation does not existTabela não encontradaVerifique o nome da tabela e o banco

SSH

ErroCausaSolução
Authentication failedCredenciais SSH inválidasVerifique usuário, senha ou chave privada
Connection timeoutHost não acessívelVerifique host, porta e rede

Usando Logs para Diagnóstico

Os logs de cada nó fornecem detalhes sobre cada passo executado. Para nós web, os logs mostram:

Navigated to: https://exemplo.com/login
Filled: "usuario@exemplo.com" on [getByLabel("E-mail")]
Clicked: [getByRole("button", { name: "Entrar" })]
Assert passed: textContains "Bem-vindo" — true

Se um passo falhou, o log mostrará exatamente qual passo e por quê:

Navigated to: https://exemplo.com/login
Filled: "usuario@exemplo.com" on [getByLabel("E-mail")]
ERROR: Click failed after 3 attempts: [getByRole("button", { name: "Login" })] — element not found

Dicas de Depuração

1. Desative o Modo Headless

Para testes web, desative o modo headless no nó para ver o navegador em ação:

  • No nó Web Flow ou Smart Locators, desmarque Headless
  • Execute o fluxo e observe o navegador

2. Adicione Passos de Wait

Se elementos aparecem com atraso, adicione passos de wait antes de interagir:

  • wait com modo visible aguarda o elemento aparecer
  • wait com modo networkIdle aguarda todas as requisições de rede terminarem

3. Capture Screenshots para Diagnóstico

Ative screenshots no modo antes para ver o estado da página antes de cada ação. Isso ajuda a identificar se a página estava no estado esperado.

4. Verifique Expressões

Se um nó falha com valor inesperado, adicione um nó Log antes dele para inspecionar os valores:

Valor do token: {{ steps.login.outputs.json.token }}
Status: {{ steps["http-request"].outputs.status }}

5. Use o Toggle "Continuar em Falha"

Para diagnosticar múltiplas falhas de uma vez, ative Continuar em Falha nos nós de verificação. Isso permite que o fluxo continue e você veja todas as falhas em uma única execução.


Relatório de Execução

Após cada execução, o QANode gera automaticamente um relatório PDF com:

  • Resumo da execução (status, duração, data)
  • Detalhes de cada passo (status, logs, outputs, duração)
  • Screenshots capturados
  • Erros encontrados

O relatório fica disponível na lista de execuções do projeto e pode ser baixado ou enviado por e-mail.


Próximos Passos