Você precisa criar uma calculadora de juros compostos que ajudará usuários a estimar o saldo de uma aplicação ao longo do tempo. A calculadora deve ter os seguintes métodos principais:
- Método: BigDecimal calcularSaldo(BigDecimal valorInicial, BigDecimal taxaJurosAnual, int anos).
- Retorna o saldo após um período de anos, com juros compostos aplicados anualmente.
- Fórmula: saldo = valorInicial * (1 + taxaJurosAnual) ^ anos.
- Método: BigDecimal calcularSaldoComAporte(BigDecimal valorInicial, BigDecimal taxaJurosAnual, int anos, BigDecimal aporteMensal).
- Retorna o saldo ao final dos anos, considerando aportes mensais adicionais.
- Implemente os métodos mencionados.
- Utilize o tipo BigDecimal para cálculos de precisão financeira.
- Escreva testes unitários para os seguintes cenários:
- Caso Básico: Verificar se a função calcularSaldo calcula corretamente o saldo após um período com valor inicial e taxa de juros.
- Aporte Mensal: Verificar se a função calcularSaldoComAporte calcula corretamente o saldo com aportes mensais.
- Valores Extremos: Testar com taxas de juros próximas de zero e valores iniciais elevados.
Lembre-se de verificar a precisão dos valores usando BigDecimal#compareTo em seus testes unitários para garantir que os cálculos estejam exatos.