InstrumentationResultParser

public class InstrumentationResultParser
extends MultiLineReceiver implements IInstrumentationResultParser

java.lang.Object
   ↳ com.android.ddmlib.MultiLineReceiver
     ↳ com.android.tradefed.result.ddmlib.InstrumentationResultParser


셸에서 계측 테스트 실행의 '원시 출력 모드' 결과를 파싱하고 ITestRunListener에 결과를 알립니다.

다음 출력이 예상됩니다.

테스트를 실행하려고 시도할 때 치명적인 오류가 발생한 경우:

 INSTRUMENTATION_STATUS: Error=error Message
 INSTRUMENTATION_FAILED:
 

또는

 INSTRUMENTATION_RESULT: shortMsg=error Message
 

그렇지 않으면 시작(1)/통과(0)/실패(-2)/오류(-1) 상태 코드 결과로 구분된 상태 키/값 쌍 집합이 각각 포함된 일련의 테스트 결과가 예상됩니다. 테스트 실행이 끝나면 경과된 테스트 시간이 초 단위로 표시되어야 합니다.

예를 들면 다음과 같습니다.

 INSTRUMENTATION_STATUS_CODE: 1
 INSTRUMENTATION_STATUS: class=com.foo.FooTest
 INSTRUMENTATION_STATUS: test=testFoo
 INSTRUMENTATION_STATUS: numtests=2
 INSTRUMENTATION_STATUS: stack=com.foo.FooTest#testFoo:312
    com.foo.X
 INSTRUMENTATION_STATUS_CODE: -2
 ...

 Time: X
 

키-값 쌍의 '값' 부분이 여러 텍스트 줄에 걸쳐 래핑될 수 있습니다.

대신 InstrumentationProtoResultParser를 사용하세요. 프로토 기반 파서에는 Logcat 메시지와 같은 추가 정보가 있습니다.

요약

공개 생성자

InstrumentationResultParser(String runName, listeners)

InstrumentationResultParser를 만듭니다.

공개 메서드

void cancel()

테스트 실행 취소를 요청합니다.

void done()

adb 세션이 완료되면 상위 요소에 의해 호출됩니다.

void handleTestRunFailed(String errorMsg)

이 메서드는 'am instrument' 명령어가 예외와 함께 비정상 종료될 때 호출됩니다.

boolean isCancelled()

테스트 실행이 취소되면 true를 반환합니다.

void processNewLines(String[] lines)

셸에서 계측 테스트 출력을 처리합니다.

공개 생성자

InstrumentationResultParser

public InstrumentationResultParser (String runName, 
                 listeners)

InstrumentationResultParser를 만듭니다.

매개변수
runName String: ITestRunListener.testRunStarted(String, int)에 제공할 테스트 실행 이름

listeners : 테스트가 실행될 때 테스트 결과가 통보됨

공개 메서드

취소

public void cancel ()

테스트 실행 취소를 요청합니다.

done

public void done ()

adb 세션이 완료되면 상위 요소에 의해 호출됩니다.

handleTestRunFailed

public void handleTestRunFailed (String errorMsg)

이 메서드는 'am instrument' 명령어가 예외와 함께 비정상 종료될 때 호출됩니다. 등록된 모든 리스너는 테스트 실행 중에 비정상 종료가 발생하면 ITestRunListener.testRunFailed에 이어 ITestRunListener.testRunEnded(long, )를 통지받아야 합니다.

매개변수
errorMsg String

isCancelled

public boolean isCancelled ()

테스트 실행이 취소되면 true를 반환합니다.

반환 값
boolean 명령어 실행을 취소하려면 true입니다.

processNewLines

public void processNewLines (String[] lines)

셸에서 계측 테스트 출력을 처리합니다.

매개변수
lines String: 새 줄이 포함된 배열입니다.