https://github.com/robsonlmds/java-tdd
Este projeto é uma implementação básica de um sistema de conta bancária com testes unitários em Java.
https://github.com/robsonlmds/java-tdd
mave spring-boot tdd
Last synced: about 2 months ago
JSON representation
Este projeto é uma implementação básica de um sistema de conta bancária com testes unitários em Java.
- Host: GitHub
- URL: https://github.com/robsonlmds/java-tdd
- Owner: Robsonlmds
- Created: 2024-11-05T23:52:58.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-11-07T23:41:19.000Z (7 months ago)
- Last Synced: 2025-02-13T17:17:26.541Z (4 months ago)
- Topics: mave, spring-boot, tdd
- Language: Java
- Homepage:
- Size: 25.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Sistema de Conta Bancária com Testes Unitários
Este projeto é uma implementação básica de um sistema de conta bancária com testes unitários em Java. Ele inclui uma classe `Conta` para representar contas bancárias e uma classe de teste `ContaTest` para validar as funcionalidades da conta.
## Estrutura do Projeto
- `Conta`: Classe que representa a conta bancária, incluindo métodos para depósito, saque e obtenção do número da conta e do saldo.
- `ContaTest`: Classe de testes unitários para verificar o comportamento da classe `Conta` usando o framework AssertJ.## Funcionalidades
1. **Criação de Conta**
- A conta é criada com um número de conta e saldo inicial de zero.
2. **Obtenção de Dados**
- É possível obter o número da conta e o saldo atual.
3. **Depósito**
- Permite depositar valores positivos na conta, somando ao saldo atual.
- Depósitos com valores inválidos (negativos) são ignorados.4. **Saque**
- Permite realizar saques na conta, subtraindo do saldo atual.
- Saques com valores inválidos (zero ou negativos) são ignorados.## Classe `Conta`
### Métodos
- `Conta(int numConta)`: Construtor que inicializa a conta com o número da conta fornecido.
- `getNumero()`: Retorna o número da conta.
- `getSaldo()`: Retorna o saldo atual da conta.
- `depositar(double valorDeposito)`: Adiciona o valor de `valorDeposito` ao saldo, se o valor for positivo.
- `sacar(double valorSaque)`: Subtrai o valor de `valorSaque` do saldo, se o valor for positivo e suficiente.### Problemas Identificados
- **Depósito e Saque**: Há problemas nas operações de depósito e saque, que não estão somando e subtraindo corretamente devido a erros de lógica nos operadores.
## Classe `ContaTest`
A classe `ContaTest` contém testes para validar as operações da classe `Conta`. Utiliza o framework AssertJ para verificar os resultados.
### Testes Implementados
- `CriarConta_numeroContaValido_contaCriadaSucesso`: Verifica se a conta foi criada com sucesso.
- `CriarConta_numeroContaValido_numeroContaSejaCorreto`: Verifica se o número da conta foi atribuído corretamente.
- `CriarConta_numeroContaValido_saldoSeraZero`: Verifica se o saldo inicial da conta é zero.
- `depositar_numeroContaValido_saldoSomaDeposito`: Verifica se o saldo aumenta corretamente após um depósito válido.
- `depositar_numeroContaValidoValorInvalido_saldoSomaDeposito`: Verifica que um depósito com valor negativo não altera o saldo.
- `depositar_numeroContaValidoValorInvalido_saldoSubDeposito`: Verifica que um saque com valor negativo não altera o saldo.## Requisitos
- Java 11 ou superior
- Biblioteca de testes AssertJ
- JUnit 5 para execução dos testes## Como Executar os Testes
Para executar os testes unitários, utilize um IDE compatível com Java e JUnit, como IntelliJ IDEA ou Eclipse. Certifique-se de que os pacotes AssertJ e JUnit 5 estejam configurados.
## Conclusão
Este projeto demonstra o uso de TDD (Test-Driven Development) para criar e validar funcionalidades de uma conta bancária básica em Java. A estrutura de testes permite validar a criação da conta, operações de depósito e saque, e o saldo inicial da conta.
---
## 👩🏻💻 Autor
Made by: Robson Lucas Messias | Contato
![]()