O que é?
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 sistemas externos, como o RM, para realizar operações específicas. Essas operações podem incluir a consulta, criação, atualização ou exclusão de 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.
Links Úteis
- O que é um Protocolo Http;
- Documentação Postman.
Exemplo de Uso
Deck of Cards |
---|
|
Card |
---|
| Expandir |
---|
title | 1. Navegação para o cadastro |
---|
| - Navegue no menu do TestFlow e clique em: Atividades → Serviços →Http
- Na tabela que será mostrada, clique no botão verde em destaque para criar Atividade de Http.
Image Added |
Expandir |
---|
title | 3. Preenchimento dos Campos |
---|
| Expandir |
---|
| 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 Image Added |
Column |
---|
Exemplo utilizando a versão padrão Image Added |
|
|
Expandir |
---|
title | Descriçã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. Image Added |
Expandir |
---|
| 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.Image Added
|
Expandir |
---|
| Expandir |
---|
title | Interpretando os Ícones |
---|
| Adicionar Requisição Image AddedClique neste ícone para adicionar uma requisição Http. Image Added Deletar todas as Requisições Image AddedClique nesse ícone para deletar todas as requisições Http presentes na atividade. Image Added Informações |
---|
Cada requisição possui este ícone, permitindo que você delete aquela requisição específica. |
|
Expandir |
---|
title | Preenchimento dos campos |
---|
| Expandir |
---|
| 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. Image Added |
Expandir |
---|
| 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. Image Added |
Expandir |
---|
| É 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: Para utilizá-lo, selecione um dos tipos de media types listados acima e adicione o conteúdo ao corpo da requisição: Image Added |
Expandir |
---|
| 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: Image Added |
Expandir |
---|
| 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. Image Added |
Expandir |
---|
| É 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. |
Image Added Após todos os campos obrigatórios preenchidos clique no botão em destaque para executar o teste de requisição.Image Added |
|
|
|
|
Card |
---|
label | Variá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. |
Card |
---|
| Criação de chamadas Http para Cadastros RM. Expandir |
---|
title | Configuração no TestFlow. |
---|
| - 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.Image Added
- 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.Image Added
- Na guia BODY, escolha o Media Type application/json cole o o json criado na página do swagger.
- 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.
- 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.Image Added
|
|
|
...
Saiba mais
Dica |
---|
Entender como manipular headers HTTP é essencial, especialmente quando se trata de autenticação. |
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 usar variáveis de 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. 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): Problema diretamente relacionado ao servidor da Api
|
Utilize as Atividades Soap para testar suas API´s.
Interface de Programação de Aplicação cuja sigla API provém do Inglês Application Programming Interface, é um conjunto de rotinas e padrões estabelecidos por um software para a utilização das suas funcionalidades por aplicativos que não pretendem envolver-se em detalhes da do software, mas apenas usar seus serviços. No RM são exemplos: Consulta, inserções, deleções e alterações em alguns de seus cadastros ou até mesmo extração de informações.
Para que consiga utilizar esta atividade é necessário que as API´s tenham sido previamente implementadas no RM. Você pode consultar as API´s já implementadas no RM digitando no seu navegador o seguinte endereço: http://localhost:8051/api/swagger/ui/index#/ . Para que funcione o host do RM da versão desejada deve estar ativo e devem ser previamente inseridas as tags abaixo em seu arquivo de configuração.
<add key="WebServiceCulture" value="Invariant" />
<add key="DefaultDB" value="CorporeRM" />
<add key="HTTPPORT" value="8051" />
Através do swagger você poderá inclusive gerar o json do body da chamada.
Assim como toda Atividade no TestFlow 30 o Http também deve em seu header estar associado a um ou mais grupos e ter pelo menos um como administrador.
Logar o erro: O erro capturado na execução será apresentado no log do projeto e não impedirá a execução do restante do teste. O resultado final do seu teste será "Executado com erro".
Gerar erro de execução: O erro capturado na execução será apresentado no log do projeto e o restante do teste não será executado. O resultado final do seu teste será "Executado com erro".
Gerar alerta e continuar: O erro capturado na execução será apresentado no log do projeto, o restante do teste será executado normalmente. O resultado final do seu teste será "Executado com alertas".
Para incluir uma requisição clique no sinal mais (+) e preencha corretamente os parâmetros da sua chamada
Verbo HTTP: Informe a operação (POST, GET, PUT, PATCH, DELETE, HEAD)
Timeout (segundos): Informe o tempo de espera da requisição.
Status e retorno http esperado: Escolha na lista o código de retorno que a chamada deverá retornar para que seu teste tenha sucesso.
AUTORIZAÇÃO : Esta informação geralmente é obrigatório no RM. Então escolha o tipo Base e informe o usuário mestre e a senha totvs.
Os campos HEADERS, BODY, QUERIES E COOKIES não são obrigatórios e devem ser preenchidos de acordo com a necessidade da API.
Sua requisição pode ser testada clicando no botão TESTE A REQUISIÇÃO sem que a mesma tenha de ser incluída em um projeto de teste. Você também testá-la utilizando o Gerenciador de Execuções.
...