베이스 포스트 프로세서
public abstract class BasePostProcessor
extends Object
implements IPostProcessor
java.lang.객체 | |
↳ | 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) 일부 오류 조건으로 인해 불완전한 호출을 보고합니다. |
final void | invocationStarted ( IInvocationContext context) 전달을 위한 호출 리스너 |
final boolean | isDisabled () 전체 개체가 비활성화된 경우 True를 반환합니다(설정 및 해제 모두 건너뛰기). |
final void | logAssociation (String dataName, LogFile logFile) 경우에 따라 로그는 테스트 사례와 강력하게 연결되어야 하지만 직접 로그-테스트 연결을 업데이트합니다. |
processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs) processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs) 모든 테스트에서 측정항목과 로그를 집계하려면 이 방법을 구현하세요. | |
abstract | processRunMetricsAndLogs ( rawMetrics, runLogs) processRunMetricsAndLogs ( rawMetrics, runLogs) processRunMetricsAndLogs ( rawMetrics, runLogs) 기존 측정항목 및 로그에서 새 측정항목 집합을 생성하려면 이 방법을 구현하세요. |
processTestMetricsAndLogs ( TestDescription testDescription, testMetrics, testLogs) processTestMetricsAndLogs ( TestDescription testDescription, testMetrics, testLogs) processTestMetricsAndLogs ( TestDescription testDescription, testMetrics, testLogs) 이 방법을 구현하여 각 테스트의 메트릭 및 로그를 사후 처리합니다. | |
final void | setLogSaver ( ILogSaver logSaver) 구현자가 파일을 저장할 수 있도록 |
void | setUp () 테스트 실행 전에 초기화하려면 하위 포스트 프로세서에서 이 메서드를 재정의합니다. |
final void | testAssumptionFailure ( TestDescription test, String trace) false인 조건을 가정한다고 원자성 테스트 플래그가 표시될 때 호출됩니다. |
final void | testAssumptionFailure ( TestDescription test, FailureDescription failure) false인 조건을 가정한다고 원자성 테스트 플래그가 표시될 때 호출됩니다. |
final void | testEnded ( TestDescription test, long endTime, testMetrics) testEnded ( TestDescription test, long endTime, testMetrics) |
final void | testEnded ( TestDescription test, testMetrics) 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) testRunEnded (long elapsedTime, runMetrics) 테스트 실행 종료를 보고합니다. |
final void | testRunFailed ( FailureDescription failure) |
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 | testStarted ( TestDescription test, long startTime) 정확한 측정을 위해 |
final void | testStarted ( TestDescription test) 테스트 케이스 콜백 |
보호된 메서드 | |
---|---|
MetricMeasurement.DataType | getMetricType () 필요한 경우 이 메서드를 재정의하여 메트릭 유형을 변경하세요. |
String | getRunName () |
공개 생성자
베이스 포스트 프로세서
public BasePostProcessor ()
공개 방법
초기화
public final ITestInvocationListener init (ITestInvocationListener listener)
포스트 프로세서의 초기화 단계. 테스트 콜백 전에 호출되도록 합니다.
매개변수 | |
---|---|
listener | ITestInvocationListener |
보고 | |
---|---|
ITestInvocationListener |
호출 종료됨
public final void invocationEnded (long elapsedTime)
성공적으로 또는 일부 오류 조건으로 인해 호출이 종료되었음을 보고합니다.
TradeFederation 프레임워크에 의해 자동으로 호출됩니다.매개변수 | |
---|---|
elapsedTime | long : 호출 경과 시간(ms) |
호출 실패
public final void invocationFailed (FailureDescription failure)
일부 오류 조건으로 인해 불완전한 호출을 보고합니다.
TradeFederation 프레임워크에 의해 자동으로 호출됩니다.
매개변수 | |
---|---|
failure | FailureDescription : 실패 원인을 설명하는 FailureDescription |
호출 실패
public final void invocationFailed (Throwable cause)
일부 오류 조건으로 인해 불완전한 호출을 보고합니다.
TradeFederation 프레임워크에 의해 자동으로 호출됩니다.매개변수 | |
---|---|
cause | Throwable : 실패의 Throwable 원인 |
호출 시작됨
public final void invocationStarted (IInvocationContext context)
전달을 위한 호출 리스너
매개변수 | |
---|---|
context | IInvocationContext : 호출에 대한 정보 |
비활성화됨
public final boolean isDisabled ()
전체 개체가 비활성화된 경우 True를 반환합니다(설정 및 해제 모두 건너뛰기). 그렇지 않으면 거짓입니다.
보고 | |
---|---|
boolean |
로그 연결
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)
에서 그렇게 할 수 있는 기회가 있습니다. testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile)
콜백이 불가능합니다. 따라서 이 콜백을 통해 강력한 연결을 명시적으로 제공할 수 있습니다.
로그-테스트 연결을 업데이트합니다. 테스트 중에 이 메서드가 호출되면 로그는 테스트에 속합니다. 그렇지 않으면 실행 로그가 됩니다.
매개변수 | |
---|---|
dataName | String : 데이터의 이름 |
logFile | LogFile : 이전에 기록되었으며 테스트 사례와 연결되어야 하는 LogFile 입니다. |
processAllTestMetricsAndLogs
publicprocessAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs)
모든 테스트에서 측정항목과 로그를 집계하려면 이 방법을 구현하세요. 이 메서드에서 나오는 메트릭은 실행 메트릭으로 보고됩니다. 새로 생성된 메트릭만 고유한 키 이름으로 반환되어야 합니다(기존 키와의 충돌은 허용되지 않음).
매개변수 | |
---|---|
allTestMetrics | ListMultimap : 메트릭 이름별로 그룹화된 각 테스트의 메트릭을 저장하는 HashMultimap입니다. |
allTestLogs | TestDescription 키로 사용하여 데이터 이름으로 키가 지정된 각 테스트의 로그 파일 맵을 저장하는 맵입니다. |
보고 | |
---|---|
모든 테스트 측정항목에서 새로 생성된 측정항목 집합입니다. |
processRunMetricsAndLogs
public abstractprocessRunMetricsAndLogs ( rawMetrics, runLogs)
기존 측정항목 및 로그에서 새 측정항목 집합을 생성하려면 이 방법을 구현하세요. 새로 생성된 메트릭만 고유한 키 이름으로 반환되어야 합니다(기존 키와의 충돌은 허용되지 않음).
매개변수 | |
---|---|
rawMetrics | |
runLogs |
보고 | |
---|---|
실행 메트릭에서 새로 생성된 메트릭 집합입니다. |
processTestMetricsAndLogs
publicprocessTestMetricsAndLogs (TestDescription testDescription, testMetrics, testLogs)
이 방법을 구현하여 각 테스트의 메트릭 및 로그를 사후 처리합니다. 새로 생성된 메트릭만 고유한 키 이름으로 반환되어야 합니다(기존 키와의 충돌은 허용되지 않음).
매개변수 | |
---|---|
testDescription | TestDescription : 테스트를 설명하는 TestDescription 개체입니다. |
testMetrics | |
testLogs |
보고 | |
---|---|
테스트 측정항목에서 새로 생성된 측정항목 집합입니다. |
setLogSaver
public final void setLogSaver (ILogSaver logSaver)
구현자가 파일을 저장할 수 있도록 ILogSaver
설정합니다.
매개변수 | |
---|---|
logSaver | ILogSaver : ILogSaver |
설정
public void setUp ()
테스트 실행 전에 초기화하려면 하위 포스트 프로세서에서 이 메서드를 재정의합니다.
테스트 가정 실패
public final void testAssumptionFailure (TestDescription test, String trace)
false인 조건을 가정한다고 원자성 테스트 플래그가 표시될 때 호출됩니다.
매개변수 | |
---|---|
test | TestDescription : 테스트를 식별합니다. |
trace | String : 실패 스택 추적 |
테스트 가정 실패
public final void testAssumptionFailure (TestDescription test, FailureDescription failure)
false인 조건을 가정한다고 원자성 테스트 플래그가 표시될 때 호출됩니다.
매개변수 | |
---|---|
test | TestDescription : 테스트를 식별합니다. |
failure | FailureDescription : 실패 및 해당 컨텍스트를 설명하는 FailureDescription . |
테스트 종료됨
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) |
테스트 종료됨
public final void testEnded (TestDescription test,testMetrics)
개별 테스트 사례의 실행 종료를 보고합니다.
testFailed(TestDescription, FailureDescription)
호출되지 않은 경우 이 테스트는 통과되었습니다. 또한 테스트 사례 실행 중에 방출되었을 수 있는 모든 키/값 메트릭을 반환합니다.
매개변수 | |
---|---|
test | TestDescription : 테스트를 식별합니다. |
testMetrics | ERROR(/Map) |
테스트 실패
public final void testFailed (TestDescription test, FailureDescription failure)
개별 테스트 사례의 실패를 보고합니다.
testStarted와 testEnded 사이에 호출됩니다.
매개변수 | |
---|---|
test | TestDescription : 테스트를 식별합니다. |
failure | FailureDescription : 실패 및 해당 컨텍스트를 설명하는 FailureDescription . |
테스트 실패
public final void testFailed (TestDescription test, String trace)
개별 테스트 사례의 실패를 보고합니다.
testStarted와 testEnded 사이에 호출됩니다.
매개변수 | |
---|---|
test | TestDescription : 테스트를 식별합니다. |
trace | String : 실패 스택 추적 |
테스트무시됨
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 메소드가 완료될 때까지 데이터 소스가 존재하고 액세스 가능한지 확인해야 합니다. |
testLog저장됨
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 ()
모듈 실행의 끝을 보고합니다.
testModule시작됨
public final void testModuleStarted (IInvocationContext moduleContext)
실행 중인 모듈의 시작을 보고합니다. 이 콜백은 testModuleEnded()
와 연결되며 시퀀스에서 선택 사항입니다. 모듈 기반 러너를 사용하는 실행 중에만 사용됩니다.
매개변수 | |
---|---|
moduleContext | IInvocationContext : 모듈의 IInvocationContext . |
testRunEnded
public final void testRunEnded (long elapsedTime,runMetrics)
테스트 실행 종료를 보고합니다. FIXME: 유형이 다른 두 개의 Map<> 인터페이스를 가질 수 없으므로 여기에서 HashMap을 사용해야 합니다.
매개변수 | |
---|---|
elapsedTime | long : 장치에서 보고된 경과 시간(밀리초) |
runMetrics | Metric 사용한 테스트 실행 종료 시 보고된 키-값 쌍입니다. |
테스트 실행 실패
public final void testRunFailed (FailureDescription failure)
FailureDescription
에서 설명한 실패로 인해 테스트 실행을 완료하지 못한 것을 보고합니다.
매개변수 | |
---|---|
failure | FailureDescription : 실패 및 해당 컨텍스트를 설명하는 FailureDescription . |
테스트 실행 실패
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의 다른 시도를 식별하는 순서 번호입니다. tryNumber는 인덱스가 0이며 새 실행이 발생할 때마다 증가해야 합니다. 예를 들어 테스트가 3번 세부적으로 재시도되고 동일한 runName에서 총 4번의 실행이 있어야 하며 tryNumber는 0에서 3까지입니다. |
startTime | long : System.currentTimeMillis() 통해 측정된 실행이 시작된 시간 |
testRunStopped
public final void testRunStopped (long elapsedTime)
사용자 요청으로 인해 테스트 실행이 완료되기 전에 중지되었음을 보고합니다.
TODO: 현재 사용하지 않음, 삭제 고려
매개변수 | |
---|---|
elapsedTime | long : 장치에서 보고된 경과 시간(밀리초) |
테스트 시작됨
public final void testStarted (TestDescription test, long startTime)
정확한 측정을 위해 ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map))
와 결합하여 테스트가 시작된 시기도 지정하는 testStarted(com.android.tradefed.result.TestDescription)
의 대안 .
매개변수 | |
---|---|
test | TestDescription : 테스트를 식별합니다. |
startTime | long : System.currentTimeMillis() 통해 측정된 테스트가 시작된 시간 |
테스트 시작됨
public final void testStarted (TestDescription test)
테스트 케이스 콜백
매개변수 | |
---|---|
test | TestDescription : 테스트를 식별합니다. |
보호된 메서드
getMetricType
protected MetricMeasurement.DataType getMetricType ()
필요한 경우 이 메서드를 재정의하여 메트릭 유형을 변경하세요. 기본적으로 메트릭은 처리된 유형으로 설정됩니다.
보고 | |
---|---|
MetricMeasurement.DataType |
getRunName
protected String getRunName ()
보고 | |
---|---|
String |