@houndly/newman-reporter-houndly
v1.0.0
Published
Houndly reporter for Newman/Postman
Downloads
102
Readme
@houndly/newman-reporter-houndly
Manda os resultados de uma coleção do Postman rodada pelo Newman para o Houndly: cada request vira uma execução no caso de teste correspondente, com erro e duração.
npm install --save-dev @houndly/newman-reporter-houndlyO nome do pacote segue a convenção do Newman, não a nossa: ele resolve um
reporter chamado houndly para @houndly/newman-reporter-houndly. É por isso
que na linha de comando ele se chama @houndly/houndly.
Configuração
newman run colecao.json -r cli,@houndly/houndly \
--reporter-@houndly/houndly-apiUrl https://acme.moraylab.ai \
--reporter-@houndly/houndly-subdomain acme \
--reporter-@houndly/houndly-projectKey STUDIO \
--reporter-@houndly/houndly-authToken "$HOUNDLY_AUTH_TOKEN"Em CI costuma sair mais limpo pelo ambiente — o reporter lê estas variáveis quando a opção correspondente não é passada:
export HOUNDLY_API_URL=https://acme.moraylab.ai
export HOUNDLY_SUBDOMAIN=acme
export HOUNDLY_PROJECT_KEY=STUDIO
export HOUNDLY_AUTH_TOKEN=hnd_...
export HOUNDLY_TEST_RUN_ID=... # opcional
newman run colecao.json -r cli,@houndly/houndly| Opção | Variável | Obrigatório | O que é |
|---|---|---|---|
| apiUrl | HOUNDLY_API_URL | sim | Endereço do workspace, https://acme.moraylab.ai |
| subdomain | HOUNDLY_SUBDOMAIN | sim, em qualquer Houndly implantado | O subdomínio do workspace, acme |
| projectKey | HOUNDLY_PROJECT_KEY | sim | A chave do projeto, STUDIO |
| authToken | HOUNDLY_AUTH_TOKEN | sim | Chave de API pessoal, criada em Integrações → Chaves de API pessoais |
| testRunId | HOUNDLY_TEST_RUN_ID | não | Manda os resultados para uma execução que já existe |
| executor | — | não | Quem rodou: GitHub Actions, Jenkins, Local |
| environment | — | não | staging, production |
| branch, commit | — | não | De onde veio o código |
| debug | — | não | Imprime o que foi enviado e o que foi ignorado |
O subdomain não é opcional na prática. Cada workspace do Houndly tem seu
próprio banco, e atrás de um proxy a API não deduz qual é pelo host. Faltando
esse campo a resposta é 401 Tenant database context not found — que parece
erro de token, e não é.
Marcar os requests
O reporter procura o identificador no nome do request, na coleção:
@houndly:STUDIO-TC-0182 POST /pedidos devolve 201
@tc:STUDIO-TC-0182 POST /pedidos devolve 201Vale o id que aparece na tela (STUDIO-TC-0182) ou o id interno do caso, o
cmt8foic30005u094mzx370xo que vem da API — esse, exatamente como está.
Request sem marcador é descartado, porque não há a que ligá-lo e resultado
no caso errado ninguém percebe. Com debug ligado o reporter diz quais ignorou.
O resultado é do request inteiro: se qualquer assertion dele falhar, o caso correspondente é marcado como falha, com a mensagem da última que falhou.
Licença
MIT
