Skip to content

Conversation

@MikV37
Copy link

@MikV37 MikV37 commented Oct 3, 2025

Подключены и настроены зависимости для тестирования в pom.xml: JUnit 4, Mockito и плагин JaCoCo.

Написан полный набор юнит-тестов для класса Burger, обеспечивающий 100% покрытие кода.

В тестах применены моки и стабы (с помощью Mockito) для изоляции тестируемого класса от зависимостей.

Реализованы параметризованные тесты для проверки логики расчёта цены бургера с разными наборами данных.

Отлажен процесс сборки проекта и генерации отчёта о покрытии с помощью команды Maven mvn clean verify.

},
{
new Bun("VIP", 125.5f),
new Ingredient[]{

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛔️Нужно исправить. Для всех зависимостей нужно использовать моки

@Test
public void addIngredientShouldAddIngredientToList() {
burger.addIngredient(mockIngredient1);
assertFalse("Список ингредиентов не должен быть пустым", burger.ingredients.isEmpty());

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛔️Нужно исправить. Для юнит-тестов придерживаемся подхода: один тест, значит одна проверка. Если очень хочется несколько проверок -- тогда используем softAssertions. Поправь, пожалуйста, во всем коде

@Mock
private Bun mockBun;
@Mock
private Ingredient mockIngredient1;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛔️Нужно исправить. При нейминге не рекомендуется использовать числа (Field2), их еще называют magicNumbers. Очень тяжело поддерживать код с magicNumbers.

String actualReceipt = burger.getReceipt();
assertEquals("Сгенерированный чек не соответствует ожидаемому", expectedReceipt, actualReceipt);
}
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛔️Нужно исправить. Приложи, пожалуйста, отчет о тестировании

@MikV37
Copy link
Author

MikV37 commented Oct 4, 2025

image Вот отчёт о покрытии, 100% для класса Burger


assertEquals("Сгенерированный чек не соответствует ожидаемому", expectedReceipt, actualReceipt);
}
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛔️Нужно исправить. нет отчета о тестировании

MikV37 added 3 commits October 4, 2025 15:26
# Conflicts:
#	src/test/java/praktikum/BurgerPriceParameterizedTest.java
#	src/test/java/praktikum/BurgerTest.java
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants