BasePostProcessor

public abstract class BasePostProcessor
extends Object implements IPostProcessor

java.lang.Object의 클래스
   ↳ com.android.tradefed.postprocessor.BasePostProcessor


모든 구현에서 확장해야 하는 기본 IPostProcessor입니다. 후처리 메서드가 최종 결과 보고자보다 먼저 호출되는지 확인합니다.

요약

공개 생성자

BasePostProcessor()

공개 메서드

final ITestInvocationListener init(ITestInvocationListener listener)

후처리기의 초기화 단계입니다.

final void invocationEnded(long elapsedTime)

호출이 성공적 또는 일부 오류 조건으로 인해 종료되었음을 보고합니다.

final void invocationFailed(FailureDescription failure)

일부 오류 상태로 인해 불완전한 호출을 보고합니다.

final void invocationFailed(Throwable cause)

일부 오류 상태로 인해 불완전한 호출을 보고합니다.

void invocationSkipped(SkipReason reason)

호출을 건너뛴 것으로 보고

final void invocationStarted(IInvocationContext context)

전달을 위한 호출 리스너

final boolean isDisabled()

전체 객체가 사용 중지된 경우 true를 반환합니다 (설정 및 해체 모두 건너뜁).

final void logAssociation(String dataName, LogFile logFile)

경우에 따라 로그를 테스트 사례와 밀접하게 연결해야 하지만 직접 testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) 콜백에서는 이를 실행할 수 없습니다.

로그-테스트 연결을 업데이트합니다.

processAllTestMetricsAndLogs(ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs)

이 메서드를 구현하여 모든 테스트의 측정항목과 로그를 집계합니다.

abstract processRunMetricsAndLogs( rawMetrics, runLogs)

기존 측정항목 및 로그에서 새 측정항목 집합을 생성하려면 이 메서드를 구현합니다.

processTestMetricsAndLogs(TestDescription testDescription, testMetrics, testLogs)

이 메서드를 구현하여 각 테스트의 측정항목과 로그를 후처리합니다.

final void setLogSaver(ILogSaver logSaver)

구현자가 파일을 저장할 수 있도록 ILogSaver를 설정합니다.

void setUp()

하위 후처리기에서 이 메서드를 재정의하여 테스트가 실행되기 전에 초기화합니다.

final void testAssumptionFailure(TestDescription test, String trace)

원자 테스트에서 거짓인 조건을 가정한다고 플래그를 지정할 때 호출됩니다.

final void testAssumptionFailure(TestDescription test, FailureDescription failure)

원자 테스트에서 거짓인 조건을 가정한다고 플래그를 지정할 때 호출됩니다.

final void testEnded(TestDescription test, long endTime, testMetrics)

ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map))의 대안으로, 종료 시간을 직접 지정할 수 있습니다.

final void testEnded(TestDescription test, testMetrics)

개별 테스트 사례의 실행 종료를 보고합니다.

final void testFailed(TestDescription test, FailureDescription failure)

개별 테스트 사례의 실패를 보고합니다.

final void testFailed(TestDescription test, String trace)

개별 테스트 사례의 실패를 보고합니다.

final void testIgnored(TestDescription test)

테스트가 실행되지 않을 때 호출됩니다(일반적으로 테스트 메서드에 org.junit.Ignore 주석이 추가되어 있기 때문).

final void testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)

이 메서드를 사용하여 PostProcessor 구현에서 파일을 로깅합니다.

final void testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

테스트 로그가 저장될 때 호출됩니다.

final void testModuleEnded()

모듈 실행 종료를 보고합니다.

final void testModuleStarted(IInvocationContext moduleContext)

모듈 실행 시작을 보고합니다.

final void testRunEnded(long elapsedTime, runMetrics)

테스트 실행 종료를 보고합니다.

final void testRunFailed(FailureDescription failure)

FailureDescription에 설명된 실패로 인해 보고서 테스트 실행을 완료하지 못했습니다.

final void testRunFailed(String errorMessage)

심각한 오류로 인해 보고서 테스트 실행을 완료하지 못했습니다.

final void testRunStarted(String runName, int testCount, int attemptNumber)

테스트 실행 시작을 보고합니다.

final void testRunStarted(String runName, int testCount)

테스트 실행 콜백

final void testRunStarted(String runName, int testCount, int attemptNumber, long startTime)

테스트 실행 시작을 보고합니다.

final void testRunStopped(long elapsedTime)

사용자 요청으로 인해 보고서 테스트 실행이 완료되기 전에 중지되었습니다.

final void testSkipped(TestDescription test, SkipReason reason)

테스트가 건너뛰어졌으며 일반적으로 예상되지 않는 이유로 실행되지 않았을 때 호출됩니다.

final void testStarted(TestDescription test, long startTime)

테스트가 시작된 시점도 지정하는 testStarted(com.android.tradefed.result.TestDescription)의 대안으로, 정확한 측정을 위해 ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map))와 함께 사용합니다.

final void testStarted(TestDescription test)

테스트 사례 콜백

보호된 메서드

void cleanUp()
MetricMeasurement.DataType getMetricType()

필요한 경우 이 메서드를 재정의하여 측정항목 유형을 변경합니다.

String getRunName()

공개 생성자

BasePostProcessor

public BasePostProcessor ()

공개 메서드

init

public final ITestInvocationListener init (ITestInvocationListener listener)

후처리기의 초기화 단계입니다. 테스트 콜백 전에 호출됩니다.

매개변수
listener ITestInvocationListener

반환 값
ITestInvocationListener

invocationEnded

public final void invocationEnded (long elapsedTime)

호출이 성공적 또는 일부 오류 조건으로 인해 종료되었음을 보고합니다.

TradeFederation 프레임워크에서 자동으로 호출됩니다.

매개변수
elapsedTime long: 호출 경과 시간(밀리초)

invocationFailed

public final void invocationFailed (FailureDescription failure)

일부 오류 조건으로 인해 불완전한 호출을 보고합니다.

TradeFederation 프레임워크에서 자동으로 호출됩니다.

매개변수
failure FailureDescription: 실패 원인을 설명하는 FailureDescription

invocationFailed

public final void invocationFailed (Throwable cause)

일부 오류 조건으로 인해 불완전한 호출을 보고합니다.

TradeFederation 프레임워크에서 자동으로 호출됩니다.

매개변수
cause Throwable: 실패의 Throwable 원인입니다.

invocationSkipped

public void invocationSkipped (SkipReason reason)

호출을 건너뛴 것으로 보고

매개변수
reason SkipReason

invocationStarted

public final void invocationStarted (IInvocationContext context)

전달을 위한 호출 리스너

매개변수
context IInvocationContext: 호출에 관한 정보

isDisabled

public final boolean isDisabled ()

전체 객체가 사용 중지된 경우 true를 반환합니다 (설정 및 해체 모두 건너뜁). 그렇지 않으면 false입니다.

반환 값
boolean

logAssociation

public final void logAssociation (String dataName, 
                LogFile logFile)

경우에 따라 로그가 테스트 사례와 밀접하게 연결되어야 하지만, 직접적인 testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) 콜백에서는 로그가 테스트 사례와 밀접하게 연결되어야 합니다. 따라서 이 콜백을 사용하면 강력한 연결을 명시적으로 제공할 수 있습니다.

로그-테스트 연결을 업데이트합니다. 테스트 중에 이 메서드가 호출되면 로그가 테스트에 속하고 그렇지 않으면 실행 로그가 됩니다.

매개변수
dataName String: 데이터의 이름

logFile LogFile: 이전에 로깅되었으며 테스트 사례와 연결되어야 하는 LogFile입니다.

processAllTestMetricsAndLogs

public  processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, 
                 allTestLogs)

이 메서드를 구현하여 모든 테스트에서 측정항목과 로그를 집계합니다. 이 메서드에서 나오는 측정항목은 실행 측정항목으로 보고됩니다. 새로 생성된 측정항목만 고유한 키 이름으로 반환해야 합니다 (기존 키와의 충돌은 허용되지 않음).

매개변수
allTestMetrics ListMultimap: 측정항목 이름별로 그룹화된 각 테스트의 측정항목을 저장하는 HashMultimap입니다.

allTestLogs : 각 테스트의 TestDescription를 키로 사용하여 데이터 이름으로 키가 지정된 각 테스트의 로그 파일 매핑을 저장하는 매핑입니다.

반환 값
모든 테스트 측정항목에서 새로 생성된 측정항목 집합입니다.

프로세스 실행 측정항목 및 로그

public abstract  processRunMetricsAndLogs ( rawMetrics, 
                 runLogs)

기존 측정항목 및 로그에서 새 측정항목 집합을 생성하려면 이 메서드를 구현합니다. 새로 생성된 측정항목만 고유한 키 이름으로 반환해야 합니다 (기존 키와 충돌해서는 안 됨).

매개변수
rawMetrics : 실행에 사용할 수 있는 원시 측정항목 집합입니다.

runLogs : 테스트 실행의 로그 파일 집합입니다.

반환 값
실행 측정항목에서 새로 생성된 측정항목 집합입니다.

processTestMetricsAndLogs

public  processTestMetricsAndLogs (TestDescription testDescription, 
                 testMetrics, 
                 testLogs)

이 메서드를 구현하여 각 테스트의 측정항목과 로그를 후처리합니다. 새로 생성된 측정항목만 고유한 키 이름으로 반환해야 합니다 (기존 키와의 충돌은 허용되지 않음).

매개변수
testDescription TestDescription: 테스트를 설명하는 TestDescription 객체입니다.

testMetrics : 테스트의 측정항목 집합입니다.

testLogs : 테스트 중에 로깅된 파일 집합입니다.

반환 값
테스트 측정항목에서 새로 생성된 측정항목 집합입니다.

setLogSaver

public final void setLogSaver (ILogSaver logSaver)

구현자가 파일을 저장할 수 있도록 ILogSaver를 설정합니다.

매개변수
logSaver ILogSaver: ILogSaver

설정

public void setUp ()

하위 후처리기에서 이 메서드를 재정의하여 테스트가 실행되기 전에 초기화합니다.

testAssumptionFailure

public final void testAssumptionFailure (TestDescription test, 
                String trace)

원자 테스트에서 거짓인 조건을 가정한다고 플래그를 지정할 때 호출됩니다.

매개변수
test TestDescription: 테스트를 식별합니다.

trace String: 실패의 스택 트레이스

testAssumptionFailure

public final void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

원자 테스트에서 거짓인 조건을 가정한다고 플래그를 지정할 때 호출됩니다.

매개변수
test TestDescription: 테스트를 식별합니다.

failure FailureDescription: 오류 및 컨텍스트를 설명하는 FailureDescription입니다.

testEnded

public final void testEnded (TestDescription test, 
                long endTime, 
                 testMetrics)

종료 시간을 직접 지정할 수 있는 ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map))의 대안입니다. 정확한 측정을 위해 testStarted(com.android.tradefed.result.TestDescription, long)와 결합하세요.

매개변수
test TestDescription: 테스트를 식별합니다.

endTime long: System.currentTimeMillis()를 통해 측정된 테스트 종료 시간입니다.

testMetrics : 내보낸 측정항목의 ERROR(/Map)

testEnded

public final void testEnded (TestDescription test, 
                 testMetrics)

개별 테스트 사례의 실행 종료를 보고합니다.

testFailed(TestDescription, FailureDescription)이 호출되지 않았다면 이 테스트는 통과한 것입니다. 또한 테스트 사례 실행 중에 내보냈을 수 있는 모든 키-값 측정항목도 반환합니다.

매개변수
test TestDescription: 테스트를 식별합니다.

testMetrics : 내보낸 측정항목의 ERROR(/Map)입니다.

testFailed

public final void testFailed (TestDescription test, 
                FailureDescription failure)

개별 테스트 사례의 실패를 보고합니다.

testStarted와 testEnded 사이에 호출됩니다.

매개변수
test TestDescription: 테스트를 식별합니다.

failure FailureDescription: 오류 및 컨텍스트를 설명하는 FailureDescription입니다.

testFailed

public final void testFailed (TestDescription test, 
                String trace)

개별 테스트 사례의 실패를 보고합니다.

testStarted와 testEnded 사이에 호출됩니다.

매개변수
test TestDescription: 테스트를 식별합니다.

trace String: 실패의 스택 트레이스

testIgnored

public final void testIgnored (TestDescription test)

일반적으로 테스트 메서드가 org.junit.Ignore로 주석 처리되어 테스트가 실행되지 않을 때 호출됩니다.

매개변수
test TestDescription: 테스트를 식별합니다.

testLog

public final void testLog (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream)

이 메서드를 사용하여 PostProcessor 구현에서 파일을 로깅합니다.

매개변수
dataName String: 데이터의 String설명 이름입니다(예: 'device_logcat'). 참고: dataName은 호출마다 고유하지 않을 수 있습니다. 즉, 구현자는 동일한 dataName으로 여러 호출을 처리할 수 있어야 합니다.

dataType LogDataType: 데이터의 LogDataType

dataStream InputStreamSource: 데이터의 InputStreamSource입니다. 구현자는 createInputStream을 호출하여 데이터 읽기를 시작하고 완료되면 결과 InputStream을 닫아야 합니다. 호출자는 testLog 메서드가 완료될 때까지 데이터 소스가 존재하고 액세스할 수 있는지 확인해야 합니다.

testLogSaved

public final void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

테스트 로그가 저장될 때 호출됩니다.

ITestInvocationListener#testLog(String, LogDataType, InputStreamSource) 대신 사용해야 합니다.

매개변수
dataName String: 데이터를 설명하는 String 이름입니다(예: 'device_logcat'). 참고: dataName은 호출마다 고유하지 않을 수 있습니다. 즉, 구현자는 동일한 dataName으로 여러 호출을 처리할 수 있어야 합니다.

dataType LogDataType: 데이터의 LogDataType

dataStream InputStreamSource: 데이터의 InputStreamSource입니다. 구현자는 createInputStream을 호출하여 데이터 읽기를 시작하고 완료되면 결과 InputStream을 닫아야 합니다.

logFile LogFile: 저장된 파일의 메타데이터가 포함된 LogFile입니다.

testModuleEnded

public final void testModuleEnded ()

모듈 실행 종료를 보고합니다.

testModuleStarted

public final void testModuleStarted (IInvocationContext moduleContext)

모듈 실행 시작을 보고합니다. 이 콜백은 testModuleEnded()와 연결되며 시퀀스에서 선택사항입니다. 모듈(모음 기반 런너)을 사용하는 실행 중에만 사용됩니다.

매개변수
moduleContext IInvocationContext: 모듈의 IInvocationContext입니다.

testRunEnded

public final void testRunEnded (long elapsedTime, 
                 runMetrics)

테스트 실행 종료를 보고합니다.

매개변수
elapsedTime long: 기기에서 보고한 경과 시간(밀리초)

runMetrics : 테스트 실행 종료 시 보고된 키-값 쌍

testRunFailed

public final void testRunFailed (FailureDescription failure)

FailureDescription에 설명된 실패로 인해 보고서 테스트 실행을 완료하지 못했습니다.

매개변수
failure FailureDescription: 오류 및 컨텍스트를 설명하는 FailureDescription입니다.

testRunFailed

public final void testRunFailed (String errorMessage)

심각한 오류로 인해 보고서 테스트 실행을 완료하지 못했습니다.

매개변수
errorMessage String: 실행 실패 이유를 설명하는 String입니다.

testRunStarted

public final void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber)

테스트 실행 시작을 보고합니다.

매개변수
runName String: 테스트 실행 이름

testCount int: 테스트 실행의 총 테스트 수

attemptNumber int: 주문 번호로, 여러 번 실행되는 동일한 runName의 여러 시도를 식별합니다. tryNumber는 0부터 시작되며 새로운 실행이 발생할 때마다 증가합니다. 예를 들어 테스트는 3번 세분화되어 재시도되며, 같은 runName에 총 4회의 실행이 허용되고, tryNumber 값이 0에서 3 사이이어야 합니다.

testRunStarted

public final void testRunStarted (String runName, 
                int testCount)

테스트 실행 콜백

매개변수
runName String: 테스트 실행 이름

testCount int: 테스트 실행의 총 테스트 수

testRunStarted

public final void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber, 
                long startTime)

테스트 실행 시작을 보고합니다.

매개변수
runName String: 테스트 실행 이름

testCount int: 테스트 실행의 총 테스트 수

attemptNumber int: 순서 번호로, 여러 번 실행되는 동일한 runName의 여러 시도를 식별합니다. attemptNumber는 0으로 시작하며 새 실행이 발생할 때마다 증가해야 합니다. 예를 들어 테스트가 세부적으로 3번 재시도되면 동일한 runName 아래에 총 4개의 실행이 있어야 하며 attemptNumber는 0~3입니다.

startTime long: System.currentTimeMillis()를 통해 측정된 실행 시작 시간입니다.

testRunStopped

public final void testRunStopped (long elapsedTime)

사용자 요청으로 인해 보고서 테스트 실행이 완료되기 전에 중지되었습니다.

TODO: 현재 사용되지 않으며 삭제해도 될 듯

매개변수
elapsedTime long: 기기에서 보고한 경과 시간(밀리초)

testSkipped

public final void testSkipped (TestDescription test, 
                SkipReason reason)

테스트가 건너뛰어졌으며 일반적으로 예상되지 않는 이유로 실행되지 않았을 때 호출됩니다. 이러한 테스트는 적절한 실행을 위해 다시 시도됩니다.

매개변수
test TestDescription: 테스트를 식별합니다.

reason SkipReason: SkipReason

testStarted

public final void testStarted (TestDescription test, 
                long startTime)

테스트가 시작된 시점도 지정하는 testStarted(com.android.tradefed.result.TestDescription)의 대안으로, 정확한 측정을 위해 ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map))와 함께 사용합니다.

매개변수
test TestDescription: 테스트를 식별합니다.

startTime long: 테스트가 시작된 시간으로, System.currentTimeMillis()를 통해 측정됩니다.

testStarted

public final void testStarted (TestDescription test)

테스트 사례 콜백

매개변수
test TestDescription: 테스트를 식별합니다.

보호된 메서드

정리

protected void cleanUp ()

getMetricType

protected MetricMeasurement.DataType getMetricType ()

필요한 경우 이 메서드를 재정의하여 측정항목 유형을 변경합니다. 기본적으로 측정항목은 처리된 유형으로 설정됩니다.

반환 값
MetricMeasurement.DataType

getRunName

protected String getRunName ()

반환 값
String