Questão FC373286
Considere que uma aplicação Java possua a classe abaixo. public class Calculadora { public double raiz(double n1) { return Math.sqrt(n1); } } Para testar o método raiz utilizando J
Linguagens de Programação
FCC · 2019
Considere que uma aplicação Java possua a classe abaixo.
public class Calculadora {
public double raiz(double n1) {
return Math.sqrt(n1);
}
}
Para testar o método raiz utilizando JUnit, foi criada a classe de teste a seguir:
import org.junit.Test;
import static org.junit.Assert.*;
public class CalculadoraTest {
private final Calculadora calc;
public CalculadoraTest( ) {
calc = new Calculadora( );
}
@Test
public void testRaiz( ) {
...I...;
}
}
Para que o teste seja aprovado, a lacuna I deverá ser preenchida por
- Assert.assertEquals (calc.raiz( 16 ),4,true);
- assertEquals ( 4, calc.raiz( 16 ), 0 )
- Assert.assertTest ( 4, calc.raiz( 16 ),1 )
- assertTrue ( 4, calc.raiz( 16 ) )
- Assert.test (4, calc.raiz( 16 ) )
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
A lacuna é preenchida por assertEquals com a assinatura usada para valores double: assertEquals(expected, actual, delta). No teste, o expected é 4 e o actual é o retorno de calc.raiz(16).
O método testado usa Math.sqrt, que retorna um double, e matematicamente \( \sqrt{16}=4 \). Portanto a asserção correta é assertEquals(4, calc.raiz(16), 0).
O terceiro parâmetro, o delta, define a tolerância para comparações de ponto flutuante. Como aqui queremos igualdade exata, usa‑se 0. Assim, se o método retornar 4.0, o teste será aprovado.
Conteúdo do catálogo FC Concursos · Atualizado em