2016-02-17 2 views
1

Я пытаюсь проверить пользовательский интерфейс моего приложения Android с помощью Espresso, но я столкнулся с некоторыми проблемами. Мои тесты вчера работали правильно, но сегодня ничего не работает. Даже этот простой тест не работает:Эспрессо, обеспечивающее NoMatchingViewException

onView(withId(R.id.login_btnSignup)).perform(click()); 

Это дает «android.support.test.espresso.NoMatchingViewException:» даже если в эмуляторе я могу видеть, что это эффективно выполнить это действие правильно. Я отключил шкалу аннуляции окна эмулятора, масштаб анимации перехода и масштаб анимации аниматора. Я также смотрел другие подобные вопросы, но безрезультатно. Спасибо заранее.

+0

Это может быть связано с более низкой скоростью сети. Попробуйте положить его в сон на несколько секунд, чтобы подтвердить это –

+0

Это не помогло –

ответ

0

Если вы говорите, что вчера тесты работали, а теперь их нет, я думаю, вам нужно обновить среду: очистить проект, создать новый эмулятор, переустановить приложение. Скажи мне, помог ли я. С моей стороны этого никогда не было. Я использую Espresso в течение некоторого времени.

Удачи вам!

0

Когда вы пытаетесь выполнить щелчок на представлении, крайне важно, чтобы в настоящее время вид отображается на дисплее при щелчке по представлению. Несколько вещей, которые могут вызвать проблемы:

  • Вид затенен, поскольку на клавиатуре отображается мягкая клавиатура. Эту проблему можно решить путем закрытия экранной клавиатуры перед нажатием кнопки:

    Espresso.closeSoftKeyboard(); 
    
  • мнение можно прокручивать из поля зрения, которые могут быть обработаны с:

    onView(withId(R.id.login_btnSignup)).perform(scrollTo()).perform(click()); 
    

Также отладить эту проблему, может быть трудно сказать, что кнопка на самом деле нажата. Попробуйте поставить точку останова на обработчик кликов и отладить тест.