💰 Uma aplicação de uma API Rest para gerenciamento de transações pessoais ajudando na gestão de gastos
Tecnologias | Projeto | Requisições | Anotações das aulas | Contatos
Esse projeto foi desenvolvido com as seguintes tecnologias:
- NodeJS
- Typescript
- Fastify
- Vitest
- Supertest
- Knex (SQLite e Postgresql)
- TSUP
- ESBuild
Nesse módulo do Ignite NodeJS desenvolvemos uma API RestFull com Nodejs para gerenciamento de transações onde um usuário pode criar uma transação com um valor específico, seja ela de débito ou crédito. O usuário pode cadastrar uma transação de adição de valor ou retirada de valor.
Além disso, é possível utilizar dos endpoints para listar todas as transações, buscar uma transação específica e gerar um resumo das transações mostrando a soma dos valores.
Abaixo todos os exemplos de requisições usadas no projeto.
É uma forma de manter contexto entre requisições. Utilizamos principalmente por redes sociais. Também usado como forma de armazenar informações sem o usuário estar logado ou ter criado uma conta ainda.
- O usuário deve poder criar uma nova transação;
- O usuário deve poder obter um resumo da sua conta;
- O usuário deve poder listar todas as transações que já ocorreram;
- O usuário deve poder visualizar uma transação única;
- A transação pode ser do tipo crédito que somará ao valor total, ou débito que subtrairá;
- Deve ser possível identificarmos o usuário entre as requisições;
- O usuário só pode visualizar transações o qual ele criou;
- Unitários: Testam uma unidade isolada da aplicação
- Integração: Testam a comunicação entre duas ou mais unidades da aplicação
- E2E (Ponta a ponta): Simulam um usuário operando na nossa aplicação
Para os testes E2E:
No Frontend seria exatamente a ação do usuário de abrir uma página de login por exemplo e realizar todas as operações para se autenticar na aplicação.
No backend é testado as portas de comunicação com a aplicação, desde a requisição até o banco de dados. Seja por meio de protocolo HTTP ou WebSockets
Você vai me encontrar em qualquer uma das redes sociais abaixo:
Aplicação construída com muito ☕ por Leandro Azanniel