2012-07-01 5 views
1

안드로이드 테스트를 사용하여 Menu의 SearchView에서 테스트를 수행하는 방법에 대한 JavaDocs의 예제 나 도움말을 찾을 수 없습니다. 그것을 할 수있는 방법이 있습니까?ActionBar에서 SearchView를 테스트하려면 어떻게해야합니까?

.setQuery("Foo", true) 또는 동등한 기능을 수행하여 내 앱에서 검색 기능을 테스트하고 싶습니다. 어떻게 할 수 있습니까?

답변

2

According to this documentation

참고 : 붕괴 액션 뷰는 선택 사항이지만, 우리는 SearchView가 포함 된 경우 당신은 항상 당신의 행동보기를 축소하는 추천 . 일부 장치는 전용 SEARCH 단추를 제공하며 사용자가 SEARCH 단추를 누르면 검색 동작보기를 확장해야합니다. 액티비티의 onKeyUp() 콜백 메서드를 무시하고 KEYCODE_SEARCH 이벤트를 수신 한 다음 expandActionView()를 호출하십시오.

KEYCODE_SEARCH 이벤트에 대한 serach 뷰를 확장 한 경우 계측을 사용하여 이벤트를 주입하여 테스트 할 수 있어야합니다.

public void testSearch() { 
    Instrumentation instrumentation = getInstrumentation(); 
    instrumentation.sendKeyDownUpSync(KeyEvent.KEYCODE_SEARCH); 
    instrumentation.sendCharacterSync(KeyEvent.KEYCODE_F); 
    instrumentation.sendCharacterSync(KeyEvent.KEYCODE_O); 
    instrumentation.sendCharacterSync(KeyEvent.KEYCODE_O); 
    //Assert here for whatever you want. 
} 

는 매니페스트에서 분사 권한이 있는지 확인합니다.

+0

에 관한 약간의 튜토리얼을 찾을 수 있다고 생각한다. Whoa, 그것은 추악하다. 그러나, 그것이 작동하면, 당신은 이깁니다. 나는 그것을 오늘 밤에 시험 할 것이다. – zostay

+0

솔루션을 제공해 주셔서 감사합니다. 여기에 그것은 야생에 있습니다 : https://github.com/zostay/CPAN-Sidekick-Test/blob/master/src/com/qubling/sidekick/test/ui/module/ModuleSearchActivityTestHelperHoneycomb.java – zostay

1

나는 당신이 할 monkeyrunner을 사용할 수 있습니다 생각 : http://developer.android.com/tools/help/monkeyrunner_concepts.html

+0

좀 더 자세히 설명해 주실 수 있습니까? Android 개발자 사이트에서 본 문서는 주제가 모호합니다. 나는 몇 가지 도구를 언급하면서 몇 가지 다른 사이트를 보았지만 확실한 것은 없습니다. 나는 그것을 사용하는 방법을 명확하게 설명하는 것을 보지 못했으며 많은 파이썬을 모른다. 필요하다면 더 많은 것을 배울 수 있지만, 시간 투자가 결실을 맺을지를 결정할 충분한 정보가 없습니다. – zostay

+0

나는 결코 그것, 나는 당신이 Google – Guillaume

관련 문제