Я стараюсь научиться правильно тестировать свои приложения для Android. Теперь я обычно использую следующую структуру:Модернизация, обратные вызовы?
- Модель
- дооснащения (позволяя ему обрабатывать резьбу с помощью обратных вызовов)
- Обертки для модернизации требует, публикующие события успеха и неудач быть подобраны предъявителями ,
- Ведущие.
- Просмотров.
Я тестировал приложения раньше, чем сам обрабатывал потоки. В этом случае я понятия не имею, как проверить, действительно ли моя обертка вызывает методы публикации событий, потому что эти методы вызываются при обратных вызовах. Что я могу сделать для решения этой проблемы?
Единственное решение, которое я могу придумать, не использует обратные вызовы, но они так удобны. Разве это не шаг назад, чтобы обрабатывать вещи сам ради тестирования?
Я могу только догадываться, что мои способы архивирования это плохо для тестирования.
EDIT: Этот вопрос предполагает, что это хорошая идея, чтобы разделить тестирование как:
1.- Проверьте, что ваш процесс асинхронного представлен должным образом. Вы можете высмеять объект, который принимает ваши асинхронные запросы, и убедитесь, что отправленное задание имеет правильные свойства и т. Д. 2.- Проверьте, что ваши асинхронные обратные вызовы делают правильные действия. Здесь вы можете высмеять первоначально поданное задание и предположить, что оно правильно инициализировано и убедитесь, что ваши обратные вызовы верны.
Но как я могу проверить первую часть без издевательства над сервисом Retrofit (потому что никогда не следует издеваться над сторонним кодом)?
Возможно, вы захотите взглянуть на Observables with The Retrofit, они также очень удобны, и их намного легче проверить. – Egor