otaldoLOCK / ProjetoMVC_Projeto

Projeto Teste no padrão MVC - Com MER, diagrama de classes e diagrama de caso de uso
0 stars 0 forks source link

Teste ClientePJ.java #5

Open Popolinos opened 5 months ago

Popolinos commented 5 months ago

A classe ClientePJ.java possui funções que pegam um cliente (empresa) e adicionam informações mais confidenciais, como CNPJ e inscrição estadual. Essas funções foram testadas individualmente para verificar se suportariam os testes feitos nela.

Popolinos commented 5 months ago

Teste certo: Esses testes garantem que a classe ClientePJ funcione conforme o esperado, verificando se os métodos setCnpj, getCnpj, setInscricaoEstadual e getInscricaoEstadual estão retornando os resultados esperados.

Os testes foram realizados no JUnit, pelo Intellij:

package Model;

import org.junit.jupiter.api.Test; import java.util.Date;

import static org.junit.jupiter.api.Assertions.*;

class ClientePJTestCerto {

@Test
void setCnpj() {
    ClientePJ clientePJ = new ClientePJ(1, new Date(), "Empresa XYZ", "12.345.678/0001-90", 123456789);
    clientePJ.setCnpj("98.765.432/0001-21");
    assertEquals("98.765.432/0001-21", clientePJ.getCnpj());
}

@Test
void getCnpj() {
    ClientePJ clientePJ = new ClientePJ(1, new Date(), "Empresa XYZ", "12.345.678/0001-90", 123456789);
    assertEquals("12.345.678/0001-90", clientePJ.getCnpj());
}

@Test
void setInscricaoEstadual() {
    ClientePJ clientePJ = new ClientePJ(1, new Date(), "Empresa XYZ", "12.345.678/0001-90", 123456789);
    clientePJ.setInscricaoEstadual(987654);
    assertEquals(987654, clientePJ.getInscricaoEstadual());
}

@Test
void getInscricaoEstadual() {
    ClientePJ clientePJ = new ClientePJ(1, new Date(), "Empresa XYZ", "12.345.678/0001-90", 123456789);
    assertEquals(123456789, clientePJ.getInscricaoEstadual());
}

}

Popolinos commented 5 months ago

Teste errado: Esses testes verificam se a classe ClientePJ estpá lidando corretamente com situações onde o CNPJ é inválido, a inscrição estadual é negativa, zero ou muito grande.

Os testes foram realizados no JUnit, pelo Intellij:

package Model;

import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.*;

class ClientePFTestErrado {

@Test
void setCPFComCPFInvalido() {
    ClientePF clientePF = new ClientePF(1, null, null, null, 0);
    assertThrows(IllegalArgumentException.class, () -> {
        clientePF.setCPF("12345678900"); // CPF inválido, pois não possui os separadores
    });
}

@Test
void setIdentidadeComIdentidadeNegativa() {
    ClientePF clientePF = new ClientePF(1, null, null, null, 0);
    assertThrows(IllegalArgumentException.class, () -> {
        clientePF.setIdentidade(-123456);
    });
}

@Test
void setIdentidadeComIdentidadeZero() {
    ClientePF clientePF = new ClientePF(1, null, null, null, 0);
    assertThrows(IllegalArgumentException.class, () -> {
        clientePF.setIdentidade(0);
    });
}

@Test
void setIdentidadeComIdentidadeMuitoGrande() {
    ClientePF clientePF = new ClientePF(1, null, null, null, 0);
    assertThrows(IllegalArgumentException.class, () -> {
        clientePF.setIdentidade(1234567890); // Identidade muito grande
    });
}

}