Existe alguma regra para avaliação da necessidade do uso do @before?
No caso de objetos que precisem de valores default , parecer ser indispensável, mas e em casos como o que segue abaixo? Não estaríamos consumindo recursos desnecessariamente?
CLASSE DE TESTE COM @BEFORE
public class MatematicaMalucaTest {
private MatematicaMaluca matematicaMaluca;
private int resultadoCalculado;
private int resultadoEsperado;
private int valorParaTeste;
@Before
public void init(){
System.out.println("init");
matematicaMaluca = new MatematicaMaluca();
}
@Test
public void validarValoreMaiorQue30(){
System.out.println("validarValoreMaiorQue30");
valorParaTeste = 50;
resultadoEsperado = 200;
resultadoCalculado = matematicaMaluca.contaMaluca(valorParaTeste);
assertEquals(resultadoCalculado, resultadoEsperado);
}
@Test
public void validarValorMenoQue10(){
System.out.println("validarValorMenoQue10");
valorParaTeste = 5;
resultadoEsperado = 10;
resultadoCalculado = matematicaMaluca.contaMaluca(valorParaTeste);
assertEquals(resultadoCalculado, resultadoEsperado);
}
@Test
public void validarValorZero(){
System.out.println("validarValorZero");
valorParaTeste = 0;
resultadoEsperado = 0;
resultadoCalculado = matematicaMaluca.contaMaluca(valorParaTeste);
assertEquals(resultadoCalculado, resultadoEsperado);
}
@Test
public void validarValorNegativo(){
System.out.println("validarValorNegativo");
valorParaTeste = -10;
resultadoEsperado = -20;
resultadoCalculado = matematicaMaluca.contaMaluca(valorParaTeste);
assertEquals(resultadoCalculado, resultadoEsperado);
}
@Test
public void validarValoreMaiorQue10Menor30(){
System.out.println("validarValoreMaiorQue10Menor30");
valorParaTeste = 15;
resultadoEsperado = 45;
resultadoCalculado = matematicaMaluca.contaMaluca(valorParaTeste);
assertEquals(resultadoCalculado, resultadoEsperado);
}
}
//CLASSE DE TESTE SEM @BEFORE
package br.com.caelum.leilao.test;
import org.junit.Test;
import static org.junit.Assert.*;
import org.junit.Before;
import br.com.caelum.leilao.servico.MatematicaMaluca;
public class MatematicaMalucaTest {
private MatematicaMaluca matematicaMaluca = new MatematicaMaluca();
private int resultadoCalculado;
private int resultadoEsperado;
private int valorParaTeste;
@Test
public void validarValoreMaiorQue30(){
System.out.println("validarValoreMaiorQue30");
valorParaTeste = 50;
resultadoEsperado = 200;
resultadoCalculado = matematicaMaluca.contaMaluca(valorParaTeste);
assertEquals(resultadoCalculado, resultadoEsperado);
}
@Test
public void validarValorMenoQue10(){
System.out.println("validarValorMenoQue10");
valorParaTeste = 5;
resultadoEsperado = 10;
resultadoCalculado = matematicaMaluca.contaMaluca(valorParaTeste);
assertEquals(resultadoCalculado, resultadoEsperado);
}
@Test
public void validarValorZero(){
System.out.println("validarValorZero");
valorParaTeste = 0;
resultadoEsperado = 0;
resultadoCalculado = matematicaMaluca.contaMaluca(valorParaTeste);
assertEquals(resultadoCalculado, resultadoEsperado);
}
@Test
public void validarValorNegativo(){
System.out.println("validarValorNegativo");
valorParaTeste = -10;
resultadoEsperado = -20;
resultadoCalculado = matematicaMaluca.contaMaluca(valorParaTeste);
assertEquals(resultadoCalculado, resultadoEsperado);
}
@Test
public void validarValoreMaiorQue10Menor30(){
System.out.println("validarValoreMaiorQue10Menor30");
valorParaTeste = 15;
resultadoEsperado = 45;
resultadoCalculado = matematicaMaluca.contaMaluca(valorParaTeste);
assertEquals(resultadoCalculado, resultadoEsperado);
}
}