Estudo de como utilizar o Wiremock
Data de elaboração | |
---|---|
Responsável pelo estudo |
|
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 |
Objetivo | |
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)
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
jsonBody: aqui configuramos o JSON que vai ser retornado quando for feito o GET pra rota previamente configurada
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.