Conversation
- Подключены библиотеки: JUnit 4, Mockito, JaCoCo - Создан BurgerTest.java с моками и стабами (17 тестов) - Создан BurgerParameterizedTest.java с параметризацией (6 тестов) - Покрытие кода 100% - Все тесты проходят успешно
- Update BurgerTest.java with additional comments - Improve BurgerParameterizedTest.java - Update pom.xml with better configuration - All tests pass with 100% coverage
| public void setUp() { | ||
| // Создаем моки как локальные переменные | ||
| Bun mockBun = mock(Bun.class); | ||
| Ingredient mockIngredient1 = mock(Ingredient.class); |
There was a problem hiding this comment.
⛔️Нужно исправить. При нейминге не рекомендуется использовать числа (Field2), их еще называют magicNumbers. Очень тяжело поддерживать код с magicNumbers.
|
|
||
| burger.removeIngredient(0); | ||
|
|
||
| assertEquals(1, burger.ingredients.size()); |
There was a problem hiding this comment.
⛔️Нужно исправить. Для юнит-тестов придерживаемся подхода: один тест, значит одна проверка. Если очень хочется несколько проверок -- тогда используем softAssertions. Поправь, пожалуйста, во всем коде
| } | ||
|
|
||
| @Test(expected = IndexOutOfBoundsException.class) | ||
| public void testRemoveIngredientWithInvalidIndex() { |
There was a problem hiding this comment.
⛔️Нужно исправить. Если в тесте не нужна параметризация, то его нужно вынести в отдельный класс
| float price = burger.getPrice(); | ||
| float expectedPrice = (100.0f * 2) + 50.0f + 75.0f; | ||
|
|
||
| assertEquals(expectedPrice, price, 0.001); |
There was a problem hiding this comment.
⛔️Нужно исправить. Для юнит-тестов применим подход: один тест, значит одна проверка. В этом тесте две проверки (Mockito.verify, assertEquals), а должна быть одна. Исправь, пожалуйста, этот момент во всем коде.
|
|
||
| # Logs | ||
| *.log | ||
| logs/ |
There was a problem hiding this comment.
⛔️Нужно исправить. Нужно приложить отчет
- 45 unit tests with JUnit 4 - Mockito for mocks and stubs - Parameterized tests for remove ingredient - 100% code coverage verified by JaCoCo - Added test reports to repository
- 45 unit tests with JUnit 4 - Mockito for mocks and stubs - Parameterized tests for remove ingredient - 100% code coverage verified by JaCoCo - Added test reports to repository - Branch: develop1
| private Bun mockBun; | ||
|
|
||
| @Mock | ||
| private Ingredient mockIngredient1; |
There was a problem hiding this comment.
⛔️Нужно исправить. При нейминге не рекомендуется использовать числа (Field2), их еще называют magicNumbers. Очень тяжело поддерживать код с magicNumbers.
Подключены библиотеки: JaCoCo, Mockito, JUnit 4
Класс Burger покрыт юнит-тестами
Использованы моки (Mockito)
Использована параметризация (BurgerParameterizedTest)
Покрытие кода 100% достигнуто