Teste api - Validação de logs

Topic created · 8 Posts · 165 Visualizações
  • Pessoal, boa tarde!
    Alguém já realizou teste de API, onde além de validar a response, precisou validar logs? Se sim, o que usaram?

  • Como assim logs?Poderia explicar melhor o seu problema?

  • Olá @Ramses-Saccol-de-Almeida, é o seguinte: Faço um post e recebo a response, normal. Só que essa response com status 200, gera um log (fora do contexto da api) e algumas informações deste log, precisam ser validadas.

  • Está dizendo que ela gera um evento? Algo tipo, manda para o rabbit…ou similar? Independente, se não for algo que a chamada te traga, precisa ver onde fica e como acessar para efetuar essa validação. Por exemplo = Se ele gera um evento e joga em uma fila para ser consumido, tu precisa conectar nessa fila, captar o evento e validar a informação.
    Como falei, só dizer log ficou meio aberto…Por isso não compreendi bem a dúvida.

  • Tenho um contexto semelhante em um projeto onde trabalho. Um endpoint retorna um JSON e persiste um LOG no banco.
    Se for esse tipo de LOG, ou vc faz um request em um outro endpoint que retorna esse LOG ou acessa o banco direto utilizando um usuário com permissão de leitura.

  • Olha… isso ta cheirando a um teste que deveria ser feito a nível unitário’ish

  • Complementando o @Thiago-Grespi , tambem pode fazer SSH pra maquina onde o log foi salvo e usar grep para validar a mensagem com a informacao necessaria. Em python, a lib paramiko ajuda com isso.

    Isso pode te ajudar, mas sinceramente concordo com o questionamento do @Ramses-Saccol-de-Almeida e do @Leonardo-Galani se isso deve ser feito a nivel de teste de aceitacao ou nao.

  • @Gabriel-Oliveira concordo. Independente de como o LOG está sendo salvo, questiono o fato de o teste do LOG estar na mesma execução do teste do endpoint. Em uma suíte de testes automatizados, vc pode encadear esses dois testes, porém eu imagino que eles serão executados em níveis diferentes.

    Mas de qualquer modo, tudo depende do seu contexto @Bernadete . Você pode analisar melhor e chegar em uma solução mais elegante:

    • Esse teste deve mesmo ser automatizado? Por que e quais os ganhos?
    • Isso é algo pontual, ou sempre acontece? Faz parte da estrutura da aplicação ou é uma exceção?
    • Pesquise qual o melhor tipo de teste para cobrir a forma em que o LOG está sendo salvo(Unitário, serviço, UI, exploratório, BD, etc)

    E vamos conversando aqui, to afim de ver onde vamos chegar 🙂