게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
안드) 테스트 케이스에서 UiAutomation이 Null이 뜹니다 ㅠㅠ
게시물ID : programmer_10965짧은주소 복사하기
작성자 : 빙티
추천 : 0
조회수 : 255회
댓글수 : 2개
등록시간 : 2015/06/07 16:32:17
옵션
  • 창작글
  • 본인삭제금지
안녕하세요!

제가 UiAutomation.injectInputEvent(motionUp, true);를 사용해서 매크로를 만들어 보려고 합니다.

 

https://youtu.be/_SlBHUW0ybM 의 설명을 보아하니

UiAutomation is a new low level testing API which was introduced with Android 4.3. UiAutomation allows instrumentation tests to test across application boundaries. It supports full screen introspection support, taking screenshots, changing device orientation and injection of raw input events.

raw input events가 가능한 저레벨 테스트 API 라고  하네요..

그래서 구글링을 바탕으로 아래와 같은 시도를 해보았습니다

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
public class TestInstrumentation extends InstrumentationTestCase {
    
    private Instrumentation i;
    private UiAutomation automation;
    final long eventTime = SystemClock.uptimeMillis();
    private int inputDevice = InputDevice.SOURCE_TOUCHSCREEN;
    
    @Override
    public void setUp() throws Exception {
        super.setUp();
        i = getInstrumentation();
        automation = i.getUiAutomation();//오류 발생!!
    }
    
    public void uiautomationTouch(int x, int y){
        
        MotionEvent motionDown = MotionEvent.obtain(eventTime, eventTime, KeyEvent.ACTION_DOWN,
                x,  y, 0);
        motionDown.setSource(inputDevice);
        automation.injectInputEvent(motionDown, true);
 
        MotionEvent motionUp = MotionEvent.obtain(eventTime, eventTime, KeyEvent.ACTION_UP,
                x, y, 0);
        motionUp.setSource(inputDevice);
        automation.injectInputEvent(motionUp, true);
        
        motionUp.recycle();
        motionDown.recycle();
    }
}
cs

위에서 getUiAutomation()만 나오면 계속 NullPointerException 에러가 뜨더라구요 ㅠㅠㅠ

 

여기서 질문!!!!


1. 테스트용 API는 컴퓨터로 리눅스 커널이나 cmd 같은거에 뭘 입력해야 하는데, 제가 입력을 안해서 에러가 나는건가요?

2. 위의 nullPointerException에러는 어떻게 고칠 수 있을까요??





답변 달아주시면 정말 감사드리겠습니다!!!

혹시 필요하신 정보가 있다면
제가 이전에 올린 글(http://todayhumor.com/?programmer_10949)을 참고하시거나
덧글 달아주시면 대답해 드리겠습니다!!!!
꼬릿말 보기
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호