Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

O que

...

é?

O HTTP é o protocolo utilizado para a comunicação entre o TestFlow e o RM via Web. Ele permite que o TestFlow atue como Automação de testes HTTP REST envolve o uso do protocolo HTTP para interagir com servidores ou APIs (Interfaces de Programação de Aplicações) de maneira automatizada. Nesse contexto, o TestFlow atua como um cliente, enviando requisições para servidores ou APIs, a fim de automatizar a obtenção e envio de dados. Isso possibilita a execução de operações como consultassistemas externos, como o RM, para realizar operações específicas. Essas operações podem incluir a consulta, criação, atualização e ou exclusão de informações dados em sistemas externos, sem a necessidade de intervenção manual.

Para que

...

serve?

Serve para realizar operações automatizadas, como a inclusão de novas entidades (como moedas) no sistema RM via chamadas de API. Isso é especialmente útil para integração de sistemas, automação de tarefas repetitivas e manutenção de registros atualizados em bases de dados corporativos.

...

Deck of Cards
idComo cadastrar
Card
labelComo Cadastrar
Expandir
title1. Navegação para o cadastro
  1. Navegue no menu do TestFlow e clique em: Atividades → ServiçosHttp
  2. Na tabela que será mostrada, clique no botão verde em destaque para criar Atividade de Http.

Expandir
title2. Link para Definir cabeçalho (Nome e nível de acesso)

Clique aqui para obter as informações do cabeçalho

Expandir
title3. Preenchimento dos Campos
Expandir
titleVersão

Especifica a versão da atividade em questão. O objetivo de versionar uma atividade é para quando necessitamos ter mais de uma atividade em versões diferentes. Isso irá nos auxiliar a ter um histórico de atualizações e assegurar que as mudanças feitas sejam rastreáveis e reversíveis, se necessário.

Informações

Se for necessário utilizar mais de uma versão do RM no seu ambiente, é recomendado que a versão da atividade seja compatível com o sistema RM em uso. Caso contrário, pode-se optar por uma versão padrão de sua preferência.

Section
Column

Exemplo utilizando a versão do RM

Column

Exemplo utilizando a versão padrão



Expandir
titleDescrição de Atividade

Fornece uma descrição detalhada da atividade, explicando seu propósito e operações, facilitando a compreensão e manutenção futura.

Expandir
titleCondição de Erro

Logar. o Erro: Quando uma atividade HTTP encontra um erro durante a execução, essa opção registra o erro nos logs do sistema. Isso permite que os administradores ou desenvolvedores revisem os detalhes do erro mais tarde, incluindo a mensagem de erro, a causa e outros detalhes relevantes da requisição falhada.

      • Exemplo: Se uma requisição HTTP falhar com um erro 404, o TestFlow deverá registrar essas informações nos logs para análise posterior. A execução do processo não será finalizada

Gerar Erro de Execução: Esta opção interrompe a execução da atividade e retorna um erro, que pode fazer com que todo o fluxo de trabalho ou processo seja interrompido. Um erro de execução indica que a operação não pode continuar devido a uma falha crítica.

      • Exemplo:  Se uma requisição HTTP falhar com um erro 404, o TestFlow deverá registrar essas informações nos logs para análise posterior e a execução do processo será finalizada.  

Gerar Alerta e Continuar: Quando ocorre um erro, em vez de interromper a execução, esta opção gera um alerta (por exemplo, uma notificação ao administrador) mas permite que o processo continue. Isso é útil em situações onde o erro não é crítico e o processo pode prosseguir sem causar maiores problemas.

      • Exemplo: Se uma requisição HTTP falhar com um erro 404,, o TestFlow deverá registrar um alerta sobre a execução da atividade e continuar processando outras operações relacionadas sem interrupção.
Expandir
titleRequisições
Expandir
titleInterpretando os Ícones

Adicionar Requisição

Clique neste ícone para adicionar uma requisição Http.

Deletar todas as Requisições

Clique nesse ícone para deletar todas as requisições Http presentes na atividade.

Informações

Cada requisição possui este ícone, permitindo que você delete aquela requisição específica.

Expandir
titlePreenchimento dos campos
Expandir
titleAutorização

Autorização: É responsável pela autenticação da sua requisição. Você pode escolher entre o tipo Basic ou optar por não utilizar autenticação.

Expandir
titleHeaders

Headers: São pares de chave-valor enviados com a requisição HTTP para fornecer informações adicionais sobre a requisição ou sobre o cliente que está enviando a requisição.

Expandir
titleBody

 É a parte da requisição HTTP onde os dados são enviados para o servidor, especialmente em métodos como POST, PUT, ou PATCH. Esses dados podem estar nos seguintes formatos:

  • JSON
  • XML
  • Text/Plain

Para utilizá-lo, selecione um dos tipos de media types listados acima e adicione o conteúdo ao corpo da requisição:

Expandir
titleQueries

São parâmetros de consulta que são adicionados ao final da URL na requisição HTTP. Eles permitem enviar informações adicionais para o servidor, sem modificar o conteúdo principal do body.

  •  No TestFlow, o campo Chave e Valor nas Queries é utilizado para adicionar parâmetros de consulta à URL da requisição HTTP. Esses parâmetros são usados para passar informações adicionais ao servidor, permitindo que você filtre, refine ou modifique os resultados retornados pela API.

Exemplo:

Expandir
titleCookies

Cookies são pequenos pedaços de dados que o servidor armazena no navegador do cliente. Eles são enviados em cada requisição subsequente ao mesmo servidor e são utilizados para manter sessões, lembrar preferências do usuário, ou rastrear informações de autenticação.

No TestFlow, o campo Chave e Valor nos Cookies é utilizado para configurar dados que serão enviados junto com a requisição HTTP ao servidor. Os cookies são pequenas informações armazenadas pelo navegador ou cliente que podem ser enviadas automaticamente com cada requisição subsequente ao mesmo servidor, permitindo que o servidor mantenha o estado entre requisições.

Expandir
titleTeste a Requisição

É  uma funcionalidade no TestFlow que permite executar uma simulação da requisição HTTP que você configurou para verificar se está funcionando corretamente antes de integrá-la a um fluxo de trabalho maior.

Para que a atividade seja realizada é obrigatório que adicione o seu servidor. 

Aviso

O Agent deve estar em execução no servidor para que possa funcionar.

Após todos os campos obrigatórios preenchidos clique no botão em destaque para executar o teste de requisição.

Card
labelVariáveis de ambiente

As variáveis dos ambientes no Http são utilizadas para ajustar as configurações das requisições SOAP conforme os diferentes ambientes de execução (desenvolvimento, teste, produção), facilitando a adaptação e reutilização dos scripts sem a necessidade de alterações manuais no código para cada ambiente.

Clique aqui para obter as informações das Variáveis de ambiente do HTTP.

Criação de chamadas Http para Cadastros RM. 

Card
labelExemplo prático
Expandir
title
Expandir
titleNavegação pelo Swagger do RM.
  1. Configure os requisitos para esse tipo de atividade. Clique aqui para mais informações.
  2. Carregue
  1. Após estar devidamente configurados conforme os requisitos deste tipo de Atividade carregue o Host do RM como Administrador.
  2. O primeiro item necessário é a informação da chamada para o método POST da API de inclusão de moedas. No nosso exemplo, vamos utilizar o cadastro de Moedas no sistema RM.

  3. As APIS´s do Host podem ser consultadas pelo swagger Para isso, deve-se consultar o swagger das API´S do Host. Isso pode ser feito inserindo a URL a seguir em seu navegador http://localhost:8051/api/swagger/ui/index#!/ e se essa página carregar, seu Host está corretamente configurado para o uso.Vamos utilizar em nosso exemplo o cadastro de Moedas do RM.
    Image Removed
  4. Na página do swagger procure pelo item Currency. Clique sobre ele para que seja expandido.
  5. Note que existem vários métodos disponíveis. Iremos utilizar o POST, método que fará a inclusão da moeda.
  6. Selecione o método POST para que ele seja expandido. Role a tela até chegar na área PARAMETERS no campo em branco de nome RECORD. Vá ao campo imediatamente a direita que tem o nome BODY e clique sobre o schema para que ele seja transferido para o campo RECORD.
  7. Preencha todos os campos do cadastro ou somente os obrigatórios conforme imagem abaixo e clique no botão TRY IT OUT.
  8. Se tudo correr bem você receberá a resposta abaixo da imagem a seguir.
Expandir
titleConfiguração no TestFlow.
  1. Na tela Método - URL informe o Verbo, a URL (conseguida na tela do swagger no navegador), Timeout, o status esperado no teste e uma descrição para a chamada como na imagem a seguir.
  2. Os itens: Autorização, Headers, Body, Queries e Cookies só devem ser preenchidos se sua chamada exigir. No caso do nosso exemplo a única exigida é a Autorização na qual devem ser informados os dados do usuário para acesso ao RM.
  3. Na guia BODY, escolha o Media Type application/json cole o o json criado na página do swagger.
  4. Navegue até a aba TESTE A REQUISIÇÃO. Selecione um servidor para execução. Lembrando que neste servidor o Agent do TestFlow deve estar em execução como Administrador. Clique aqui para mais informações sobre o agent.
  5. Clique no botão play e aguarde o resultado. Devem ser mostrados os dados que foram incluídos. Este é sinal de que sua requisição está correta e pronta para ser inserida em um Projeto ou Agendamento.

...

Dica

Entender como manipular headers HTTP é essencial, especialmente quando se trata de autenticação. O TestFlow permite configurar diferentes tipos de autenticação, como Basic Auth, Bearer Tokens, ou mesmo OAuth2. Aprender a configurar esses headers corretamente garante que suas requisições sejam aceitas pelo servidor de destino.

Dica

A atividade HTTP no TestFlow fornece logs detalhados de cada requisição realizada. Aprender a monitorar esses logs, interpretar mensagens de erro e revisar respostas de APIs é crucial para manter a integridade e o desempenho dos seus processos automatizados.

Dica

Antes de implementar uma atividade HTTP em um processo de produção, é fundamental testá-la. O TestFlow oferece opções para testar requisições diretamente na interface, permitindo verificar se os dados enviados e recebidos estão corretos e se o comportamento esperado foi alcançado. Testar suas atividades ajuda a evitar problemas quando o processo estiver em execução.

FAQ

Informações

P: Posso Posso usar variáveis dinâmicas na URL ou no Bodyde ambiente na Atividade?

R: Sim, você pode usar variáveis dinâmicas no TestFlow para preencher automaticamente partes da URL, Headers, Body, e outros campos com dados gerados ou capturados por outras atividades no fluxo.R: Para garantir a eficácia do caso de teste, certifique-se de que ele cubra todos os cenários possíveis, incluindo casos de uso críticos, exceções e integrações com outros sistemas.

P: Posso configurar o TestFlow para fazer tentativas repetidas em caso de falha?

R: Sim, o TestFlow permite configurar tentativas automáticas de uma requisição em caso de falha. Isso é útil para garantir que a operação seja concluída com sucesso, mesmo em condições de rede instáveis.

P: O que acontece com as Permissões quando um Projeto de Teste é associado?
R: Se um projeto de teste for associado, as permissões do projeto sobreporão as do caso de teste. Caso a associação seja desfeita, as permissões originais do caso de teste serão restauradas.

P: Quais são os erros comuns e como resolvê-los?

  • Erro 400 (Bad Request): Verifique se todos os campos obrigatórios estão preenchidos corretamente no Body da requisição.
  • Erro 401 (Unauthorized): Confirme se as credenciais de autenticação são válidas e foram incluídas corretamente nos Headers.
  • Erro 404 (Not Found): Certifique-se de que a URL da API está correta e o recurso existe.
  • Erro 500 (Internal Server Error): Pode ser um problema no servidor. Tente novamente mais tarde ou contate o suporte técnico.
R: Alguns desafios comuns incluem manter os casos de teste atualizados conforme o software evolui, garantir cobertura completa de testes e ajustar casos de teste conforme novos requisitos são adicionados ou alterados.
  • Problema diretamente relacionado ao servidor da Api