Android Monkey Test 사용

0. 레퍼런스

1. Monkey Test란?
- Monkey는  Android SDK에서 제공하는 Command Line Tool (java)
- Emulator나 Device에 random한 event 를 발생
- Event로는 click, touch, gesture, system level event 등이 포함

2. 기본 사용법 
- adb shell에서 monkey tool을 실행
- 예 1: $ monkey 200
-- 200개의 이벤트를 발생

3. 이벤트 구분 옵션
- 예 2: $ monkey --pct-touch 20 --pct-motion 60 --pct-syskeys 10 --pct-appswitch 10 1000

--pct-touch <percent> 
 터치 이벤트 발생 비율을 조정한다.
 (터치 이벤트는 화면의 한 곳을 눌렀다 떼는 신호를 말한다)
--pct-motion <percent> 
 모션 이벤트의 발생 비율을 조정한다.
 (모션 이벤트는 화면 한 지점을 누르고 무작위로 다른 지점으로 이동 후 떼는 것을 말한다) 
--pct-trackball <percent> 
 트랙 볼 이벤트의 발생 비율을 조정한다.
  (하나 이상의 무작위 이동 이벤트를 말하며 가끔씩 한번의 클릭이 올 수 있다) 
--pct-nav <percent> 
"basic"네비게이션 이벤트의 발생 비율을 조정한다.
(네비게이션 이벤트란 H/W(폰)의 상하좌우 방향키 입력을 말한다.) 
--pct-majornav <percent> 
"major"네비게이션 이벤트의 발생 비율을 조정한다.
(백 키나 메뉴 키, 방향키의 가운데 키와 같은 이벤트를 말한다.)
--pct-syskeys <percent> 
시스템 이벤트의 발생 비율을 조정한다.
(Home 버튼, 백 키, 전화 걸기, 전화  끊기, 볼륨 조절과 같은 이벤트를 말한다.)
--pct-appswitch <percent> 
엑티디비 실행 비율을 조정한다. 패키지 안의 다른 액티비티로 변환되는 것을 말한다.

4. 추가 주요 옵션
-v  출력 레벨 조정
레벨 0 - 디폴트로 시작, 종료 등의 최소한의 출력
레벨 1 - 어떤 이벤트를 발생 시켰는지 상세 표시
레벨 2 - 레벨 1보다 더 상세한 정보 출력
-s <seed> 
monkey는 무작위 이벤트를 발생시키지만 seed를 지정하면 에러를 발견하고 수정한 후 이전과 동일한 이벤트를 발생시킬 수 있다.
같은 이벤트를 발생시키고자 한다면 같은 seed값을 지정하면 된다.
--throttle <milliseconds> 
이벤트 발생 속도를 지정.
지정하지 않는 경우에는 가능한 빠르게 이벤트를 발생시킨다. 
-p <allowed-package-name> 
테스트할 패키지 명을 지정한다.
지정이 없는 경우에는 시스템 모든 패키지를 대상으로 한다.
-p <package1> -p <package2>와 같이 복수의 패키지 지정도 가능하다.
-c <main-category> 
 카테고리를 지정한다.
지정하지 않으면 Intent.CATEGORY_LAUNCHER 또는, Intent.CATEGORY_MONKEY를 지정한 것으로 된다.
복수의 카테고리를 지정할 때에는 -c 옵션을 카테고리마다 지정한다

댓글

이 블로그의 인기 게시물

SSH 연결 Delay 해결

[ELK] search guard를 이용한 보안 설정 (사용자 권한)

공공데이터(openapi) 사용법 (특정 정류소, 버스의 남은 좌석 확인 하기)