2

활동을 여는 특정 메소드를 호출해야하는 사용자 정의보기가 있습니다. 에스프레소 테스트에서 올바른 방법은 무엇입니까? 이 뷰를 팽창시킬 필요가 있거나 사용자 정의 ViewAction을 작성해야합니까?에스프레소 테스트에서 사용자 정의 뷰의 메소드를 호출하는 방법은 무엇입니까?

+0

처럼, 평소로 사용할 수 있습니다, 사용자 정의에 메소드를 호출 할 필요가 활동 내부에있는보기 또는 처음부터 활동을 시작해야합니까? – lelloman

+0

사용자 정의보기에서 메소드를 호출해야합니다. –

+0

설명을 위해 활동 단위 테스트를 원하십니까? 아니면 통합 테스트를 원하십니까? – mawalker

답변

7

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 
    } 

} 

같은 사용자 정의 ViewAction를 작성하고 내가 문제를 이해 '말아

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

어떻게 결과를 되찾고 어설 션 방법에 전달합니까? – everlasto

관련 문제