2

У меня есть пользовательский вид, по которому мне нужно вызвать конкретный метод для открытия действия. Каков правильный способ сделать это в тесте эспрессо? Мне просто нужно раздуть этот вид, или мне нужно написать собственный ViewAction?Как вызвать метод на пользовательском представлении в эспрессо-тесте?

+0

я «не понимаю эту проблему, необходимо вызвать метод на обычае что внутри операции, или вам просто нужно начать свою деятельность с нуля? – lelloman

+0

Мне нужно вызвать метод на пользовательском представлении –

+0

Для уточнения, хотите ли вы выполнить единичный тест Activity или это для теста интеграции? – mawalker

ответ

7

вы можете создать собственный ViewAction как этот

public class MyCustomViewAction implements ViewAction{ 

    @Override 
    public Matcher<View> getConstraints(){ 
     return isAssignableFrom(YourCustomView.class); 
    } 


    @Override 
    public String getDescription(){ 
     return "whatever"; 
    } 

    @Override 
    public void perform(UiController uiController, View view){ 
     YourCustomView yourCustomView = (YourCustomView) view; 
     yourCustomView.yourCustomMethod(); 
     // tadaaa 
    } 

} 

и использовать его, как обычно, как

onView(withId(whatever)).perform(new MyCustomViewAction()); 
+0

Как вернуть результат и передать его методам утверждения? – everlasto

 Смежные вопросы

  • Нет связанных вопросов^_^