Юнит-тестирование в Android - PullRequest
0 голосов
/ 04 мая 2019

Я написал много кода для приложения, но я не использовал подход Model-View-Presenter.Мне нужно сделать модульные тесты для приложения.Я искал учебники, и многие люди либо используют статические методы, либо используют MVP.Должен ли я изменить весь мой код на MVP или есть более простой способ заставить модульные тесты работать без статических методов и переменных?

Я планирую использовать Mockito и JUnit4.Я разрабатываю на AndroidX.

Ответы [ 2 ]

0 голосов
/ 05 мая 2019

Я предлагаю поместить весь код core в настольный проект с файлом сборки gradle. Положите материал для Android в Android Studio.

Это делает модульное тестирование кода ядра очень быстрым и простым.

0 голосов
/ 04 мая 2019

Используемая архитектура (MVP или любая другая) не имеет ничего общего с модульными тестами. Более того, тестировать типичные экземпляры объектов даже проще, чем статические методы или переменные.

Единственная (и очень важная) вещь, которую вы должны учитывать, это НЕ смешивать чистый код, связанный с Java, с кодом, связанным с Android, так что вы сможете выполнить модульное тестирование всех объектов Java с Mockito и JUnit, и, возможно, использование Espresso или Robolectric для определения интеграционных тестов для объектов, связанных с Android. Разделение интересов (SoC) действительно важно, особенно при работе со сложными средами, такими как Android. Архитектурные модели и шаблоны, конечно же, помогают вам следовать SoC, но вам не нужно следовать какой-либо модели или шаблону, чтобы иметь SoC, поскольку он может (и должен присутствовать) присутствовать в любом фрагменте кода.

Почему вы не можете тестировать модуль Java с помощью Mockito прямо сейчас?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...