QANode Logo

Dashboard

O Dashboard oferece uma visão consolidada do estado dos seus testes através de widgets configuráveis — cards de métrica, gráficos e tabelas.


Visão Geral

Imagem: Dashboard com múltiplos widgets: cards de métrica, gráfico de barras e tabela


Dashboards Múltiplos

O QANode suporta múltiplos dashboards com diferentes visibilidades:

TipoVisibilidadeDescrição
PrivadoApenas o criadorDashboard pessoal
PúblicoTodos os usuáriosDashboard compartilhado
Por PapelUsuários com papéis específicosDashboard por equipe/papel
SistemaTodos (somente leitura)Dashboards padrão do QANode

Widgets

Tipos de Widget

TipoDescriçãoUso Típico
Card de MétricaValor numérico único com formatação condicionalTotal de execuções, taxa de sucesso
Gráfico de BarrasBarras verticais com uma ou mais sériesExecuções por dia, falhas por projeto
Gráfico de LinhaLinhas de tendênciaEvolução da taxa de sucesso
Gráfico de ÁreaÁrea preenchidaAcumulado de execuções
Gráfico de PizzaDistribuição proporcionalProporção sucesso/falha
TabelaDados tabularesLista de últimas execuções

Criando um Widget

O assistente de criação de widget possui 3 etapas:

Etapa 1: Fonte de Dados

Defina de onde os dados virão:

Query Builder (Recomendado):

CampoDescrição
TabelaTabela de dados (execuções, projetos, fluxos, etc.)
ColunasCampos a selecionar
FiltrosCondições (igual a, contém, maior que, etc.)
AgrupamentoAgrupar por campo (com formatação de data)
AgregaçãoCOUNT, SUM, AVG, MIN, MAX
OrdenaçãoCampo e direção (ASC/DESC)
PivotCriar múltiplas séries a partir de um campo
LimiteMáximo de registros (até 1000)

Lógica de Filtros: Combine múltiplos filtros com operadores AND ou OR.

Formatação de Data no Agrupamento:

FormatoResultado
Somente Data2024-01-15
Somente Hora14:30
Data e Hora2024-01-15 14:30
Mês/Ano2024-01
Ano2024

SQL Direto:

Para consultas mais complexas, use o modo SQL com o editor Monaco:

SELECT
  DATE(started_at) as dia,
  status,
  COUNT(*) as total
FROM runs
WHERE started_at >= NOW() - INTERVAL '30 days'
GROUP BY dia, status
ORDER BY dia

O modo SQL requer a permissão dashboard.sql.

Etapa 2: Visualização

Escolha o tipo de gráfico e mapeie os campos:

ConfiguraçãoDescrição
Tipo de GráficoCard, Barras, Linha, Área, Pizza, Tabela
Eixo XCampo para o eixo horizontal
Eixo YCampo para o eixo vertical (valor numérico)
SérieCampo para múltiplas séries (quando pivot)
LegendaExibir/ocultar legenda
TooltipExibir valores ao passar o mouse

Etapa 3: Aparência

ConfiguraçãoDescrição
TítuloNome exibido no widget
CoresCores customizadas por série/categoria
Formatação CondicionalRegras de cores baseadas em valores

Formatação Condicional (para cards e tabelas):

OperadorExemplo
>Se valor > 90 → verde
<Se valor < 50 → vermelho
=Se valor = "failed" → vermelho
containsSe contém "error" → amarelo

Layout do Dashboard

O dashboard usa um grid de 12 colunas responsivo:

PropriedadeDescrição
Largura1 a 12 colunas
Altura1 a 10 linhas
Posição XColuna de início (0-11)
Posição YLinha de início

Reorganizando Widgets

  • Arrastar um widget para reposicioná-lo
  • Redimensionar arrastando a borda inferior-direita
  • O grid se ajusta automaticamente para evitar sobreposições

Exemplos de Widgets

Card: Taxa de Sucesso

Tabela: runs
Agregação: COUNT(*)
Filtro: status = "success" AND started_at >= hoje - 30 dias

Gráfico de Barras: Execuções por Dia

Tabela: runs
Agrupamento: started_at (somente data)
Agregação: COUNT(*)
Pivot: status
Tipo: Barras

Resultado: Barras empilhadas com cores diferentes para sucesso/falha por dia.

Tabela: Últimas Falhas

Tabela: runs
Filtro: status = "failed"
Colunas: nome do fluxo, data, duração, erro
Ordenação: started_at DESC
Limite: 10

Auto-Refresh

Widgets podem ser configurados para atualizar automaticamente em intervalos definidos, mantendo os dados sempre atualizados.


Dicas

  • Comece simples — um card com total de execuções + um gráfico de barras por dia
  • Use formatação condicional para destacar problemas (taxa abaixo de 80% = vermelho)
  • Dashboards por equipe — crie dashboards com visibilidade por papel
  • Use o modo pivot para criar gráficos com múltiplas séries sem SQL
  • Limite os dados — consultas grandes podem impactar a performance