Тест Мокито Посмотреть видимость - PullRequest
0 голосов
/ 06 июля 2018

Я хочу написать тест на видимость просмотра.

У меня есть что-то вроде этого

@Test
fun showProgressBarTest() {

    val eventPlannerListFragment = Mockito.mock(EventPlannerListFragment::class.java)

    eventPlannerListFragment.showProgressBar(true)

    assertEquals(View.VISIBLE, eventPlannerListFragment.fragment_progress_bar.visibility)

}

Но я получаю:

java.lang.NullPointerException
at com.fs.wfm.ui.EventPlannerListFragmentTest.showProgressBarTest(EventPlannerListFragmentTest.kt:47)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
...

Можно ли это проверить с помощью Mockito? Или мне нужно использовать другой тестовый фреймворк?

Спасибо за рабочий пример.

1 Ответ

0 голосов
/ 07 июля 2018

Ваша трассировка стека не очень полезна, потому что ваш пример кода не содержит номеров строк.Но я могу догадаться, что NPE происходит по вашему утверждению.Моки, созданные mockito, «ничего не делают» по умолчанию.Когда вы пытаетесь получить доступ к вашему индикатору выполнения, он становится пустым.Создание фиктивного фрагмента не просто волшебным образом создает все объекты, которые имел бы ваш обычный фрагмент.Даже если бы вы вызвали конструктор фрагментов, это не принесло бы вам пользы.Платформа Android должна создавать эти объекты, чтобы они были значимыми.

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