Mockito mocks запускает актуальный код Android в Lollipop или выше

Итак, у меня есть класс Database, у которого есть зависимость, которая расширяет SQLOpenHelper, и я тестирую, используя инструментальные тесты Android и Mockito для имитации зависимостей. Мы замечаем, что Mockito на самом деле не дразнит реализации Mockito.mock(class) вместо этого фактический код выполняется и выдает исключения нулевого указателя, как и следовало ожидать. На устройствах API 19 тесты выполняются должным образом, и макеты работают правильно.

У кого-нибудь есть предложения или вещи, которые стоит попробовать? Я пробовал реальные устройства и эмуляторы с похожими результатами. Может ли это быть проблемой Mockito или проблемой dex-maker? Я не нашел никакой информации во время поиска.

После еще одного тестирования любого класса, над которым я издеваюсь, Mockito просто использует реализацию. Вот мои зависимости

androidTestCompile 'org.mockito:mockito-core:1.10.19'
androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.2'

Примечание: это также в модуле библиотеки, если это имеет какое-либо значение.

1 ответ

Решение

Так что избавляемся от наших старых зависимостей Mockito и dexmaker и используем новое: Mockito-android

Исправлены наши проблемы

Другие вопросы по тегам