SlideShare a Scribd company logo
1 of 3
Android Monkey 를 이용한 Test 자동화
Monkey Test
- Android SDK에서 제공하는 프로그램으로 디바이스에 대해 random한 이벤트를 발생시킴
- 마치 원숭이가 기기를 작동하는 것처럼 event를 발생시키기 때문에 Monkey 라는 이름이 붙여짐.
Monkey 기본 사용법
- adb shell monkey –p <package> <options> <event count>
- 사용 예
adb shell monkey –p com.etribe.larva –v 100
Monkey 행동 제어
- 해당 App에서 주요 이슈가 있을 만한 옵션을 선택하여 비율로 등록하여 이벤트를 발생시킴
- 사용 예
adb shell monkey –p com.etribe.larva –-pct-nav 50 –pct-majornav 50 –v 100
(기본 네이게이션과 주 네비게이션이 50:50 비율로 발생)
- options
-- pct-touch : 터치 이벤트
-- pct-motion : 드래그 관련 이벤트
-- pct-nav : 방향키 포커스 이동
-- pct-majornav : UI 관련 이벤트, 버튼, 메뉴키, 백키
-- pct-syskey : System Key 이벤트 ( 홈, 백, 전화걸기/끊기, 볼륨 조절 )
-- pct-appswitch : 액티비티 랜덤 실행
-- pct-anyevent
- Seed 사용
Seed 값을 사용하여, 이슈 발생시 동일한 이벤트를 다시 재현하여, 이슈를 해결할 수 있음.
adb shell monkey –p com.etribe.larva –s 555 –v 100
Monkey Script 활용
- 지정한 이벤트를 순차적으로 스크립트로 작성하여 이벤트를 발생시킴
- 사용 예
adb shell monkey –v -f /sdcard/monkey.txt 1
(sd 카드에 스크립트 파일을 복사해두고, 실행시켜야 함 )
Monkey Script 작성 예
# 은 주석
type=user
speed=1.0
#Start Setting
start data >>
# 실행할 패키지와 Activity를 지정해야 함.
LaunchActivity(com.samsung.ebrochure, com.samsung.ebrochure.page.EIntroPage)
# 대기시간
UserWait(2000)
#touch
// 터치 이벤트
DispatchPointer(0, 0, 0, 210, 300, 0, 0, 0, 0, 0, 0, 0 )
DispatchPointer(0, 0, 1, 210, 300, 0, 0, 0, 0, 0, 0, 0 )
UserWait(2000)
#HomeKey
captureDispatchKey(0,0,0,3,0,0,0,0)
captureDispatchKey(0,0,1,3,0,0,0,0)
UserWait(2000)

More Related Content

More from ETRIBE_STG

데이터베이스 시스템 chapter4_STG박하은
데이터베이스 시스템 chapter4_STG박하은데이터베이스 시스템 chapter4_STG박하은
데이터베이스 시스템 chapter4_STG박하은ETRIBE_STG
 
데이터베이스 시스템 chapter3_STG박하은
데이터베이스 시스템 chapter3_STG박하은데이터베이스 시스템 chapter3_STG박하은
데이터베이스 시스템 chapter3_STG박하은ETRIBE_STG
 
데이터베이스 시스템 chapter2_STG박하은
데이터베이스 시스템 chapter2_STG박하은데이터베이스 시스템 chapter2_STG박하은
데이터베이스 시스템 chapter2_STG박하은ETRIBE_STG
 
데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은ETRIBE_STG
 
Spring Security
Spring SecuritySpring Security
Spring SecurityETRIBE_STG
 
Springsecurity
SpringsecuritySpringsecurity
SpringsecurityETRIBE_STG
 
지적재산권
지적재산권지적재산권
지적재산권ETRIBE_STG
 
머큐리얼저장소추가 사용자추가 권한추가
머큐리얼저장소추가 사용자추가 권한추가머큐리얼저장소추가 사용자추가 권한추가
머큐리얼저장소추가 사용자추가 권한추가ETRIBE_STG
 
리눅스에 대하여
리눅스에 대하여리눅스에 대하여
리눅스에 대하여ETRIBE_STG
 
Wix - 웹 홈페이지 제작
Wix - 웹 홈페이지 제작Wix - 웹 홈페이지 제작
Wix - 웹 홈페이지 제작ETRIBE_STG
 
모바일에서 Ble pxp
모바일에서 Ble pxp모바일에서 Ble pxp
모바일에서 Ble pxpETRIBE_STG
 
모바일에서 Ble pxp
모바일에서 Ble pxp모바일에서 Ble pxp
모바일에서 Ble pxpETRIBE_STG
 
Android version
Android version Android version
Android version ETRIBE_STG
 
구글맵 JavaScript API
구글맵 JavaScript API구글맵 JavaScript API
구글맵 JavaScript APIETRIBE_STG
 
Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리ETRIBE_STG
 
표기법을 아시나요?
표기법을 아시나요?표기법을 아시나요?
표기법을 아시나요?ETRIBE_STG
 
피들러 신명대
피들러 신명대피들러 신명대
피들러 신명대ETRIBE_STG
 

More from ETRIBE_STG (20)

데이터베이스 시스템 chapter4_STG박하은
데이터베이스 시스템 chapter4_STG박하은데이터베이스 시스템 chapter4_STG박하은
데이터베이스 시스템 chapter4_STG박하은
 
데이터베이스 시스템 chapter3_STG박하은
데이터베이스 시스템 chapter3_STG박하은데이터베이스 시스템 chapter3_STG박하은
데이터베이스 시스템 chapter3_STG박하은
 
데이터베이스 시스템 chapter2_STG박하은
데이터베이스 시스템 chapter2_STG박하은데이터베이스 시스템 chapter2_STG박하은
데이터베이스 시스템 chapter2_STG박하은
 
데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은
 
Spring Security
Spring SecuritySpring Security
Spring Security
 
Springsecurity
SpringsecuritySpringsecurity
Springsecurity
 
지적재산권
지적재산권지적재산권
지적재산권
 
AWS
AWSAWS
AWS
 
머큐리얼저장소추가 사용자추가 권한추가
머큐리얼저장소추가 사용자추가 권한추가머큐리얼저장소추가 사용자추가 권한추가
머큐리얼저장소추가 사용자추가 권한추가
 
리눅스에 대하여
리눅스에 대하여리눅스에 대하여
리눅스에 대하여
 
Wix - 웹 홈페이지 제작
Wix - 웹 홈페이지 제작Wix - 웹 홈페이지 제작
Wix - 웹 홈페이지 제작
 
모바일에서 Ble pxp
모바일에서 Ble pxp모바일에서 Ble pxp
모바일에서 Ble pxp
 
모바일에서 Ble pxp
모바일에서 Ble pxp모바일에서 Ble pxp
모바일에서 Ble pxp
 
Android version
Android version Android version
Android version
 
구글맵 JavaScript API
구글맵 JavaScript API구글맵 JavaScript API
구글맵 JavaScript API
 
Objc literals
Objc literalsObjc literals
Objc literals
 
Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리
 
표기법을 아시나요?
표기법을 아시나요?표기법을 아시나요?
표기법을 아시나요?
 
Swing browser
Swing browserSwing browser
Swing browser
 
피들러 신명대
피들러 신명대피들러 신명대
피들러 신명대
 

Android monkey 를 이용한 TEST 자동화 - 정찬민

  • 1. Android Monkey 를 이용한 Test 자동화
  • 2. Monkey Test - Android SDK에서 제공하는 프로그램으로 디바이스에 대해 random한 이벤트를 발생시킴 - 마치 원숭이가 기기를 작동하는 것처럼 event를 발생시키기 때문에 Monkey 라는 이름이 붙여짐. Monkey 기본 사용법 - adb shell monkey –p <package> <options> <event count> - 사용 예 adb shell monkey –p com.etribe.larva –v 100 Monkey 행동 제어 - 해당 App에서 주요 이슈가 있을 만한 옵션을 선택하여 비율로 등록하여 이벤트를 발생시킴 - 사용 예 adb shell monkey –p com.etribe.larva –-pct-nav 50 –pct-majornav 50 –v 100 (기본 네이게이션과 주 네비게이션이 50:50 비율로 발생) - options -- pct-touch : 터치 이벤트 -- pct-motion : 드래그 관련 이벤트 -- pct-nav : 방향키 포커스 이동 -- pct-majornav : UI 관련 이벤트, 버튼, 메뉴키, 백키 -- pct-syskey : System Key 이벤트 ( 홈, 백, 전화걸기/끊기, 볼륨 조절 ) -- pct-appswitch : 액티비티 랜덤 실행 -- pct-anyevent - Seed 사용 Seed 값을 사용하여, 이슈 발생시 동일한 이벤트를 다시 재현하여, 이슈를 해결할 수 있음. adb shell monkey –p com.etribe.larva –s 555 –v 100
  • 3. Monkey Script 활용 - 지정한 이벤트를 순차적으로 스크립트로 작성하여 이벤트를 발생시킴 - 사용 예 adb shell monkey –v -f /sdcard/monkey.txt 1 (sd 카드에 스크립트 파일을 복사해두고, 실행시켜야 함 ) Monkey Script 작성 예 # 은 주석 type=user speed=1.0 #Start Setting start data >> # 실행할 패키지와 Activity를 지정해야 함. LaunchActivity(com.samsung.ebrochure, com.samsung.ebrochure.page.EIntroPage) # 대기시간 UserWait(2000) #touch // 터치 이벤트 DispatchPointer(0, 0, 0, 210, 300, 0, 0, 0, 0, 0, 0, 0 ) DispatchPointer(0, 0, 1, 210, 300, 0, 0, 0, 0, 0, 0, 0 ) UserWait(2000) #HomeKey captureDispatchKey(0,0,0,3,0,0,0,0) captureDispatchKey(0,0,1,3,0,0,0,0) UserWait(2000)