Вступить в клуб →
средняявопросТестирование: JUnit, MockK, Espresso и Compose

После рефакторинга корзины сломались 30 тестов, хотя приложение работает

@Test
fun addItem() = runTest {
    vm.onAdd(item)
    coVerifyOrder {
        repo.getCart()
        repo.saveCart(any())
    }
}

Репозиторий получил метод addItem(item), и ViewModel стала вызывать его вместо пары getCart + saveCart. Поведение для пользователя то же, но 30 подобных тестов упали. Как писать тесты устойчивее?

  • Фейковый репозиторий в памяти и проверка состояния
  • Использовать relaxed-моки во всех тестах
  • Проверять вызовы через verify без порядка
  • Не тестировать ViewModel, только репозиторий

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела