Встречается на собеседованиях • сегодня

Каким должен быть хороший Unit тест

Хороший unit-тест должен быть:

  1. Изолированным – тестирует только одну функциональность, не зависит от других тестов или внешних состояний.
  2. Детерминированным – всегда дает одинаковый результат при одинаковых входных данных.
  3. Быстрым – выполняется мгновенно, без задержек (без сетевых запросов, БД и т.д.).
  4. Читаемым – понятные названия методов, структура Arrange-Act-Assert.
  5. Проверяющим поведение, а не реализацию – тестирует результат, а не внутренние детали.

Пример хорошего теста:

java
@Test
void shouldReturnFullNameWhenFirstNameAndLastNameProvided() {
    // Arrange
    User user = new User("John", "Doe");

    // Act
    String fullName = user.getFullName();

    // Assert
    assertEquals("John Doe", fullName);
}

Плохие практики: тесты с побочными эффектами, медленные, хрупкие (ломаются при любом изменении кода).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы