Boa tarde pessoal.
Estava escrevendo uns testes e me bateu uma dúvida. Para efeito de exemplo, suponham que eu tenha um método assim:public class Calculadora {
public Calculadora() {
// Faz algo
}
// ...
public double dividir(double a, double b) {
if (b == 0) {
throw new ArithmeticException("Divisão por zero.");
}
return a / b;
}
}
@Test(expected = ArithmeticException.class)
public void testeDivisaoPorZero() {
Calculadora calc = new Calculadora();
calc.dividir(1, 0);
}
@Test
public void testeDivisao() {
Calculadora calc = new Calculadora();
assertTrue(calc.dividir(10, 2), 5);
}
@Test(expected = ArithmeticException.class)
public void testeDivisao() {
Calculadora.calc = new Calculadora();
calc.dividir(1, 0);
assertTrue(calc.dividir(10, 2), 5);
}
Já que a linha 4 da segunda alternativa disparará uma exceção com toda certeza, a linha 5 será testada?
Abraços

