Чем Flow testing отличается от manual delays и когда что выбрать?
Что хотят услышать интервьюеры:
Сравнение: Flow testing нужно оценивать относительно manual delays по критериям lifecycle, читаемости, тестируемости, производительности и поддержки.
Ответ:
Когда выбирать Flow testing: когда его свойства прямо соответствуют задаче: проверяет emissions, completion и errors; часто используют Turbine или toList в controlled scope.
На собеседовании: не говорите «это современнее»; объясните trade-off, ограничения и возможные ошибки. Типичный анти-паттерн: писать flaky UI tests, тестировать implementation details или зависеть от реальной сети/базы без контроля.
flow.test { awaitItem() }