Назад к вопросам
Aston
Junior — Middle
66
Можете объяснить, что из себя представляют тесты с параметрами и зачем они используются?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Тесты с параметрами (parameterized tests) — это тесты, которые запускаются несколько раз с разными наборами входных данных. Это позволяет проверить одну и ту же логику на разных значениях без дублирования кода.
Зачем использовать:
- Повышают покрытие тестами.
- Упрощают поддержку, так как один тест проверяет множество случаев.
- Делают тесты более читаемыми и компактными.
Пример на 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);
}
}