Este repositório fornece o microsserviço de gerenciamento dos produtos (itens) da Aplicação Fast Food - ALFAC (veja mais em /~https://github.com/ALFAC-Org/food/).
- Linguagem de Programação: Java 17
- Framework: Spring Boot
- Gerenciador de dependências: Maven
- Banco de dados: NoSQL AWS DynamoDB
- Documentação e uso de API's: Swagger
- Conteinerização: Docker
- Testes unitários: JUnit 5 + Jacoco
- Testes de comportamento (BDD): Cucumber
A aplicação está estruturada no padrão de Clean Architecture.
Utiliza do banco de dados NoSQL AWS DynamoDB para armazenamento das informações.
Pode ser executada tanto via Docker e Terraform. Podendo ser hospedada tanto localmente ou na nuvem, usando serviços como AWS.
A interação da aplicação se dá através de APIs com o Swagger disponibilizado.
Todos os vídeos estão disponíveis também aqui: https://drive.google.com/drive/folders/1C9UbKeiVNRIM7CSv-HMgMHZflwbqI5tQ?usp=sharing
Passo a passo
[!WARNING]
Primeiramente, é necessário configurar a infraestrutura por meio do link: /~https://github.com/ALFAC-Org/food-cloud-infra/actions/workflows/create-infraestructure.yml
- Acesse /~https://github.com/ALFAC-Org/food-produto/actions (A guia
Actions
deste repositório); - Acesse
CI/CD
; - Clique em
Run workflow
(ou Executar workflow); - Aguarde. Se tudo der certo, o
check
verde deverá aparecer - o processo dura em torno de 2 minutos;
Para acessar a aplicação é necessário acessar a URL da através do Kubernetes, acessando a área de Services e acessando ao serviço food-produto
.
A URL será algo como: http://aa326084c74cf48c6a15f7832f4edb95-21c002b943a9cff6.elb.us-east-1.amazonaws.com:8080/api-docs.
Passo a passo
No terminal, execute:
docker compose up
Acesse a aplicação da API em:
Certifique-se de instalar as dependências do projeto antes de executar os testes.
Se seu terminal suportar o comando make
:
make build-without-tests
senão:
mvn clean install -U -DskipTests
Passo a passo
No terminal, execute:
Se seu terminal suportar o comando make
:
make unit-test-coverage
senão:
mvn clean test -P unit-tests
Você poderá ver o relatório de cobertura de testes em target/site/jacoco/index.html
.
Além disso, é possível ver o coverage atualizado nesta página, ao lado do título do repositório.
Passo a passo
No terminal, execute:
docker compose up
Em outro terminal, execute:
Se seu terminal suportar o comando make
:
make bdd-test
senão:
mvn clean test -P bdd-tests
Você poderá ver o relatório de cobertura de testes em target/cucumber-reports/cucumber.html
.
Nome | RM | GitHub | |
---|---|---|---|
Leonardo Fraga | RM354771 | rm354771@fiap.com.br | @LeonardoFraga |
Carlos Henrique Carvalho de Santana | RM355339 | rm355339@fiap.com.br | @carlohcs |
Leonardo Alves Campos | RM355568 | rm355568@fiap.com.br | @lcalves |
Andre Musolino | RM355582 | rm355582@fiap.com.br | @amusolino |
Caio Antunes Gonçalves | RM354913 | rm354913@fiap.com.br | @caio367 |