돈의 안드로이드 응용 프로그램 테스트 테스트

A, 원숭이의 특징

1 동작의 타이밍은 : 관능 시험의 첫 번째 라운드 밤 완료 후, 일반적으로 제품은 안정

2, 여기서 packageName을 알 필요가

3. 목적 : 주요 테스트 제품은 충돌 및 ANR 문제가있는 경우.

둘째, 두 가지 방법은 패키지 이름을 얻었다

먼저 획득 한 패키지 시뮬레이터를 설치하려면 : ADB <경로와 패키지 이름> 설치

로그 캣 ADB에 의해 얻은 1, 
ADB 쉘 "로그 캣 | 시작을 grep을"[직접 표시 로그온하지 않은 경우, 먼저 리눅스 명령을 입력 할 수 있습니다 다음, ADB 쉘을 실행 로그 캣 | 그렙 START]
다음 APK를 열고, 당신은 패키지 이름을 나올 수 있습니다

2, aapt에 덤프 배지의 APK 名称

원숭이의 셋째, 기본 명령

1, 표준 원숭이 명령 : ADB 쉘 원숭이 -p의 com.android.calculator2 -v (50)

-p : 여기서 packageName

-v : 로그 수준

50 : 사건 수

2, ADB 쉘 원숭이 -p com.android.calculator2 -v -v --pct 터치 --throttle 50 600 88

--pct 터치 (50)는 클릭의 비율에 전체 프로세스를 설정합니다

이벤트 600ms의 간격마다 600 --throttle

3, ADB 쉘 원숭이 -p 패키지 이름 --throttle 500 --ignore-충돌 --ignore-시간 제한 --ignoresecurity-예외 --ignore--충돌 기본 --monitor-네이티브 충돌 -v -v -v 1000000> C : \ monkey_test.log

 --ignore-충돌 실행을 중지 원숭이 여부, (강제 닫기 오류) 응용 프로그램이 충돌을 지정하는 데 사용됩니다. 이 매개 변수를 사용하는 경우 이벤트 카운트가 완료 될 때까지, 심지어 응용 프로그램이 충돌하는 경우, 원숭이는 여전히 이벤트를 보냅니다.

--ignore-시간 제한은 응용 프로그램이 실행을 중지 원숭이 여부, ANR (응용 프로그램 아니오 응답) 오류가 발생했을 때 지정하는 데 사용됩니다. 이 매개 변수를 사용하는 경우 이벤트 카운트가 완료 될 때까지 응용 프로그램 오류가 발생 ANR 경우에도, 원숭이는 여전히 이벤트를 보냅니다. 

--ignore-보안 예외는 허가 응용 프로그램 오류가 발생, 원숭이 (예 : 인증서 라이센스, 네트워크 라이센스, 등) 실행을 중지 할 것인지 여부를 때 지정하는 데 사용됩니다. 이 매개 변수를 사용하는 경우 이벤트 카운트가 완료 될 때까지 응용 프로그램 오류가 라이센스 원숭이 발생한 경우에도 여전히 이벤트를 보냅니다. 

--kill-공정 후 오류가 응용 프로그램 오류가 발생했을 때 그 동작을 중지 할 것인지 여부를 지정하기 위해 사용된다. 지정된 경우 응용 프로그램 오류가 발생하면, 애플리케이션을 실행하고, 현재 상태 (: 어플리케이션에만 오류가 시스템이 응용 프로그램의 프로세스를 종료하지 않는 발생시 여전히 주) 유지 멈춘다.

--monitor-네이티브 충돌 모니터와 네이티브 코드를 발생하는 충돌의 응용 프로그램을보고 있는지 여부를 지정합니다

네, 원숭이 로그 수준

파라미터 : -v 피드백 정보는 상기 레벨을 지정하는 데 사용되는, 각각 다음과 같은 매개 변수에 대응하는, 세 개의 하위 레벨의 합계 (세부 단계는 로그 레벨 정보이다)

1 로그 레벨 LEVEL0

      예 ADB shellmonkey -p com.htc.Weather -v 100 

      설명 기본값, 부팅 프롬프트에 대한 정보의 소량 만, 완전하고 최종 시험 결과 등

2, 로그 레벨은 1 레벨

      예 ADB 쉘 원숭이 -p com.htc.Weather -v -v (100) 

      설명 활동의 각 송신되는 이벤트 정보를 포함하여보다 자세한 로그를 제공합니다

3, 레벨 레벨 2를 기록

      예 ADB 쉘 원숭이 -p com.htc.Weather -v -v -v (100)

      테스트를 포함한 로그의 가장 상세한 설명은 / 체크되지 않은 활동 정보를 확인

이벤트의 다섯, 원숭이 유형

1, - PCT 터치 : 터치 이벤트의 지정된 비율과 같은 : - PCT 터치 5

2 --pct 모션 (일정 슬라이딩)

3 --pct 트랙볼 (트랙볼 이벤트)

4, --pct - 탐색 (네비게이션 이벤트 상 / 하 / 좌 / 우)

5---pct majornav (네비게이션 메인 이벤트 뒤로 키, 메뉴 키)

6, --pct-SYSKEYS (시스템 키 이벤트로 돌아 가기 홈, startCall, 통화 종료, 동시에 볼륨)

7---pct appswitch (작업의 전환)

8 - (모든 경우에) PCT-anyevent

 여섯, 원숭이 매개 변수 -s 

파라미터 : 동일한 시드가 두 시험 원숭이 같은 제조 -s 경우는 의사 난수 발생기를 시드 값, 이벤트의 순서를 지정한다. 예 :

원숭이 테스트 1 : com.htc.Weather -p ADB 쉘 원숭이 (10) (100)를 -s

원숭이 시험 2 : S-10 개 com.htc.Weather 100 개의 테스트 결과 -p ADB 쉘 원숭이은 시뮬레이션, 즉 사용자의 동작 시퀀스 (특정 순서로 이루어진 각 작동하는 일련의 동작뿐만 동일 시퀀스)는 동일하다. 연산의 순서는 랜덤하게 생성되지만, 우리는 동일한 시드 값을 지정하는 경우, 그러나, 동작의 랜덤 시퀀스는 두 검사가 동일 생성 할 수 있도록 상기 의사 랜덤 시퀀스의 동작 단계;

원숭이의 일곱 개 로그 분석

1, 키워드 검색, ANR, 예외, 충돌, 오류에 의해. 

2, 문제 영역을 찾을 수는 상황에 맞는 정보를 참조하십시오. 

도 3은, 상기 제 1 스위치의 컨텍스트 정보를 참고. 

내부 작업이 원숭이 오류를 확인하기 전에 (4), 일부 이벤트는, 수동으로이 작업을 수행 할 수 있습니다.

5 명령 ​​전에 실행 반복되는 문제, 원숭이 같은 시드 값에주의, 다시 실행에 사용할 수 있습니다.

[분석 시험 결과]

(1), ANR 문제 (응답) : 로그에 "ANR"에 대한 검색 (출원 번호 응답)

(2) 문제를 다시 플래시 : 로그 검색을 "충돌"

(3) 예외 : "예외"를 검색

(4), 강제 종료 : 검색 "강제 폐쇄"

여덟, 충돌 특수

1, 설치가 응용 프로그램 충돌이 발생할 수 있습니다

2 명령을 실행 압력

3, 예외 정보의 충돌을 추출

케이스 : 스트레스 테스트를 수행하고 monkey_test.log는 로그 파일을 생성합니다.

#adb 쉘 원숭이 -p cn.besttest.crashtest -v 100> E : \ 원숭이 \ monkey_test.log  

#보기 E 디스크 폴더에서 monkey_test.log를 생성되었습니다.

# 파일 열기, 충돌 분석

나인, ANR 특수

위의 단계

1, 설치가 앱 ANR을 일으킬 수 있습니다

2 명령을 실행 압력

3 ANR는 예외 정보를 추출

 

1, 원숭이의 로그를 참조 

2 / 데이터 / ANR / traces.txt

ANR 로그 로그 캣 3.

 

      

 

추천

출처www.cnblogs.com/wuzm/p/10963979.html