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, ITestRunListener listener)

단일 리스너를 위한 InstrumentationResultParser를 만듭니다.

InstrumentationResultParser(String runName, Collection<ITestRunListener> 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, 
                ITestRunListener listener)

단일 리스너를 위한 InstrumentationResultParser를 만듭니다.

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

listener ITestRunListener: 테스트가 실행될 때 테스트 결과가 전달됨

InstrumentationResultParser

public InstrumentationResultParser (String runName, 
                Collection<ITestRunListener> listeners)

InstrumentationResultParser를 만듭니다.

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

listeners Collection: 테스트가 실행될 때 테스트 결과가 전달됨

공개 메서드

취소

public void cancel ()

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

완료

public void done ()

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

handleTestRunFailed

public void handleTestRunFailed (String errorMsg)

이 메서드는 'am instrument' 명령어가 예외와 함께 비정상 종료될 때 호출됩니다. 테스트 실행 중에 비정상 종료가 발생하면 등록된 모든 리스너에 ITestRunListener.testRunFailed가 전달된 후 ITestRunListener.testRunEnded가 전달됩니다.

매개변수
errorMsg String

isCancelled

public boolean isCancelled ()

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

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

processNewLines

public void processNewLines (String[] lines)

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

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