Ir para o conteúdo principal

Estudo de como utilizar o Wiremock

Data de elaboração 03/11/05/23
Responsável pelo estudo
  1. Renato Nascimento de Lima

  2. João Cícero Romão Gomes de Oliveira

  3. Henrique dos Santos Oliveira
  4. Vinicius da Rosa Pereira
  5. Calebe de Araújo Stodulski
Equipe do estudo Guardiões da Galáxia
Alvo Todos os sistemas sob a responsabilidade do time Guardiões da Galáxia
Origem

Implementação: Estudo que levanta o que é necessário ser feito para integraçãoconfigurar doe softwareutilizar "Hemofaces"a comferramenta  o "SIHRO"Wiremock, conforme a User Story: “Eu guardião preciso de um estudo para verificarutilizar comoa seráferramenta realizada integração do software hemofaces ao sistema SIHROWiremock" presente na Sprint número 125126 do time Guardiões

Objetivo ConsumirConfigurar asa informaçõesferramenta do Hemofaces dentro do sistema SIHROWiremock
Observações Sem observações
1. Introdução

Visto que hojeDurante o "Hemovida", software utilizado pela Fhemeron para o processamento do sangue, se comunica com equipamentosdesenvolvimento de terceirosuma quenova se comunicam com o "Hemovida" de forma local utilizando o software "Hemofaces". Com a implantação do SIHROfuncionalidade, se viu necessário adaptaro consumo de uma API que não possuía disponibilidade a todo tempo, e para não interromper o desenvolvimento da funcionalidade foi decidido pelos membros do time o uso destede softwareuma para SIHROferramenta que épermite um"emular" sistemao web.retorno de uma API, fazendo com que fosse possível testar a funcionalidade e continuar o desenvolvimento mesmo quando a API que seria consumida pela funcionalidade não estivesse disponível.

2. Desenvolvimento

2.1 Instalação da ferramenta

Para utilizar a adaptaçferramenta você possui diversas opções, a escolhida pelo time foi utilizar Docker, o procedimento para instalação oe responsável pelo o Hemofaces criou uma adaptaçexecução deleda queimagem disponibilizafoi via um GET request que é: http://localhost:8080/hemofacesBiorad/rest/imuno/find/0152220525001. Esse request vai ser utilizado pelo SIHRO para importação dos dados do Hemoface Biorad (adaptação do Hemofaces disponibilizada para ser utilizado pelo SIHRO). A request retorna um JSON que o SIHRO irá utilizar para ter as informações disponibilizadas pelo Hemofacesfeito de acordo com a documentação disponibilizada pelo próprio Wiremock que se encontra no link:Configuring and running WireMock in Docker | WireMock

2.2 Configuração da Ferramenta

Após ter seu container do Wiremock criado, você vai ter uma pasta chamada mappings aonde você vai criar um arquivo do tipo JSON, nesse arquivo vai ser configurado as necessidadespropriedades dosprincipais fluxos.do ENDPOINT de acordo com sua necessidade, no nosso caso configuramos as seguintes propriedades:

 request: criamos a rota e definimos o metódo (GET, POST, PUT ou DELETE) 

image.png

response: configuramos se queremos que o response retorne com um OK, ou qualquer outro tipo de retorno desejável como você imaginou, isso da amplas possibilidades do que pode ser feito com a ferramenta

image.png

jsonBody: aqui configuramos o JSON que vai ser retornado quando for feito o GET pra rota previamente configurada 

image.png

2.3 Execução 

Após configurar todas as propriedades desejadas, você executa o seu container e pronto, você tem uma API "fake" que permite com que você teste da maneira desejada a sua funcionalidade, podendo inclusive configurar mappings para retornos indesejáveis e já criar as tratativas necessárias para eventuais indisponibilidades que possam ocorrer.

3. Conclusão

OCom GETa requestutilização disponibilizadoda permiteferramenta se viu possível o desenvolvimento da funcionalidade mesmo com quea indisponibilidade da API alvo no ambiente de desenvolvimento e também se vê uma ampla gama de possibilidades para o SIHROuso possada consumirferramenta asem informaçõesoutros processadascenários, peloa Hemofacesferramenta se mostrou extramamente útil para a equipe de desenvolvimento e então futuramente será trabalhado melhor, de acordo com os fluxos que serão criados no SIHRO, como essas informações serão processadas e utilizadas pelo SIHRO. 

Será necessárioatendeu a criaçãonecessidade de User Storys para criar a integração, utilizando a rota disponibilizada pela API. existente.