Мои локальные модульные тесты все время используют LiveData. Обычно, когда вы пытаетесь установить значение MutableLiveData, вы получаете
java.lang.RuntimeException: Method getMainLooper in android.os.Looper not mocked.
потому что локальная JVM не имеет доступа к платформе Android. Я исправил это, используя это:
@get:Rule
val rule = InstantTaskExecutorRule()
Все было хорошо, пока мне не пришлось использовать PowerMockito для имитации статического метода из библиотеки Google Play. Поскольку я добавил
@RunWith(PowerMockRunner::class)
@PrepareForTest(Tasks::class)
над объявлением моего тестового класса я снова начал получать эту ошибку Looper not mocked. Я использовал это правило раньше с MockitoJUnitRunner, и все было хорошо.