Яка різниця між @test і @ParameterizedTest?

Основна відмінність полягає в тому, що значення, які ви використовуєте в тесті, надходять із параметрів, а не жорстко закодовані в самому методі. Інша відмінність полягає в тому, що ви зазвичай використовуєте спеціальний синтаксис, щоб вказати, що даний метод є параметризованим тестом, і визначити джерело параметризованих даних.

Параметризовані тести добре працюють для тестування функцій/функцій, які мають простий вхід, коли ви хочете протестувати різні введення. Вони погано працюють для тестування різних функцій і складного введення. Їх не слід використовувати як зручну структуру для написання менше коду.

Тип анотації NotBlank Перевірте, що анотований рядок не є нульовим або порожнім. Різниця з NotEmpty полягає в тому кінцеві пробіли ігноруються.

Це називається тестовим класом. Визначити, що певний метод є методом тестування, додайте до нього анотацію @Test. Цей метод виконує тестовий код. Ви використовуєте метод assert, наданий JUnit або іншою структурою assert, щоб перевірити очікуваний результат порівняно з фактичним результатом.

Використовуються параметризовані тести у ситуаціях, коли потрібно виконати точно той самий тест, використовуючи велику кількість різних вхідних значень. Гарним прикладом може бути тестування фрагмента коду, який виконує обчислення, де у вас є велика колекція відомих правильних відповідей, які ви хотіли б перевірити.