Junior — Middle
Pode explicar em que consistem os testes com parâmetros e por que são utilizados?
sobes.tech IA
Resposta da IA
Testes parametrizados são testes que são executados várias vezes com diferentes conjuntos de dados de entrada. Isso permite verificar a mesma lógica com diferentes valores sem duplicar o código.
Para que servem:
- Aumentam a cobertura dos testes.
- Simplificam a manutenção, pois um único teste verifica múltiplos casos.
- Tornam os testes mais legíveis e compactos.
Exemplo em JUnit 5:
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource;
class ExampleTest {
@ParameterizedTest
@ValueSource(strings = {"racecar", "radar", "level"})
void testPalindrome(String candidate) {
assertTrue(isPalindrome(candidate));
}
boolean isPalindrome(String text) {
return new StringBuilder(text).reverse().toString().equals(text);
}
}