Skip to main content

Robot Framework listener para integração em tempo real com QA Manager

Project description

qa-manager-integration

Integração em tempo real entre o Robot Framework e a plataforma QA Manager via API REST.

Um listener Robot Framework v3 captura cada resultado de teste no momento em que ocorre e o envia automaticamente para o QA Manager — sem necessidade de alterar os arquivos .robot existentes.


Como funciona

Robot Framework
  └─ start_suite  ──► POST /integration/test-runs                  (cria o Test Run, recebe integration_token)
  └─ end_test     ──► POST /integration/test-runs/{id}/results     (envia resultado de cada teste)
  └─ end_suite    ──► POST /integration/test-runs/{id}/complete    (marca a execução como concluída)

Dois tokens são usados:

  • API Token (qm_...) — gerado no perfil do usuário no QA Manager, usado para criar o Test Run
  • Integration Token (retornado pela API) — usado para todos os envios de resultados subsequentes

Instalação

pip install qa-manager-integration

Para desenvolvimento local:

git clone <url-do-repo> qa-manager-integration
cd qa-manager-integration
pip install -r requirements.txt

Quick Start

1. Configurar

qa-manager-integration setup

O comando interativo solicita:

  • URL da API do QA Manager
  • API Token (gerado em Meu Perfil → API Tokens)
  • Código do projeto

E salva em .qamanager.json.

2. Executar testes

robot --listener qa_manager_integration.listener.QAManagerListener tests/

Os resultados são enviados automaticamente para o QA Manager em tempo real.

3. Verificar configuração

qa-manager-integration check

Configuração (.qamanager.json)

{
  "api_url": "http://localhost:3001/api",
  "token": "qm_abc123...",
  "project_code": "ROQ",
  "default_type": "AUTOMATED"
}

Hierarquia de prioridade

A configuração é carregada de múltiplas fontes (a mais alta vence):

  1. Variáveis de ambiente (QA_MANAGER_*)
  2. .qamanager.json no diretório do projeto (local)
  3. ~/.qamanager.json no home (global)

Variáveis de ambiente

Variável Descrição
QA_MANAGER_TOKEN API Token (alternativa ao .qamanager.json)
QA_MANAGER_URL URL base da API (padrão: http://localhost:3001/api)
QA_MANAGER_PROJECT_CODE Código de integração do projeto

Uso do Listener

# Com .qamanager.json configurado (recomendado):
robot --listener qa_manager_integration.listener.QAManagerListener tests/

# Especificando sprint via argumento:
robot --listener qa_manager_integration.listener.QAManagerListener:SPRINT_ID tests/

# Modo legado (project + sprint como argumentos):
robot --listener qa_manager_integration.listener.QAManagerListener:PROJECT_CODE:SPRINT_ID tests/

Comandos CLI

Comando Descrição
qa-manager-integration setup Configuração interativa — gera .qamanager.json
qa-manager-integration check Valida configuração e testa conectividade

Uso programático

from qa_manager_integration import QAManagerListener, QAManagerClient, load_config

config = load_config()
client = QAManagerClient(config["api_url"], config["token"])
ok, msg = client.check_connection()

Pré-requisitos

  • Python 3.10+
  • Robot Framework 7.x
  • Acesso à API do QA Manager

Licença

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qa_manager_integration-1.0.2.tar.gz (10.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qa_manager_integration-1.0.2-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file qa_manager_integration-1.0.2.tar.gz.

File metadata

  • Download URL: qa_manager_integration-1.0.2.tar.gz
  • Upload date:
  • Size: 10.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for qa_manager_integration-1.0.2.tar.gz
Algorithm Hash digest
SHA256 f4066d4f611cc1d5f354e25573b1d4f4bcb3b10af5d29060e4928cd0107e10c0
MD5 310cb0038bea5b36349c50e7d45ad82f
BLAKE2b-256 f75c49785175539e67bcf6234e6db8d5f355d0a407bfa46d71b92968e52e0487

See more details on using hashes here.

File details

Details for the file qa_manager_integration-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for qa_manager_integration-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ec6ff2d5217d24fde1f7447d7b9b69d287941311ea10e0ad79196c17e5d68742
MD5 bb976e1b17a4d17af169d603e112ff60
BLAKE2b-256 dd80d1e423ede9259fd95392441355b4c92f60f1b29585c4ab65a4e84012dedb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page