ShardMainResultForwarder

public class ShardMainResultForwarder
extends ResultForwarder implements ILogSaverListener

java.lang.Object
   ↳ com.android.tradefed.result.ResultForwarder
     ↳ com.android.tradefed.invoker.ShardMainResultForwarder


샤딩된 테스트 호출의 결과를 결합하는 ResultForwarder입니다. 모든 샤딩된 호출이 완료된 후에만 리스너에게 호출 완료를 보고합니다.

이 클래스는 스레드로부터 안전하지 않습니다. 호출 콜백이 순서에 맞게 호출되지 않도록 하려면 클라이언트가 테스트 결과를 전송할 때 이 클래스를 잠그는 것이 좋습니다.

요약

공개 생성자

ShardMainResultForwarder( listeners, int expectedShards)

ShardMainResultForwarder를 만듭니다.

공개 메서드

getListeners()

리스너 목록을 가져옵니다.

void invocationEnded(long elapsedTime)

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

void invocationEnded(long elapsedTime, IInvocationContext context)

완료된 샤드를 구분하는 더 자세한 콜백입니다.

void invocationFailed(FailureDescription failure)

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

void invocationFailed(Throwable cause)

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

void invocationSkipped(SkipReason reason)

호출을 건너뛴 것으로 보고

void invocationStarted(IInvocationContext context)

테스트 호출 시작을 보고합니다.

void logAssociation(String dataName, LogFile logFile)

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

void testLogForward(String dataName, LogDataType dataType, InputStreamSource dataStream)

먼저 로그를 저장하는 대신 testLog만 전달합니다.

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

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

공개 생성자

ShardMainResultForwarder

public ShardMainResultForwarder ( listeners, 
                int expectedShards)

ShardMainResultForwarder를 만듭니다.

매개변수
listeners : 모든 샤드가 완료될 때 결과를 전달할 ITestInvocationListener 목록입니다.

expectedShards int: 샤드 수

공개 메서드

getListeners

public  getListeners ()

리스너 목록을 가져옵니다. 서브클래스에서만 사용할 수 있습니다.

반환 값
ITestInvocationListener 목록입니다.

invocationEnded

public void invocationEnded (long elapsedTime)

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

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

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

invocationEnded

public void invocationEnded (long elapsedTime, 
                IInvocationContext context)

완료된 샤드를 구분하는 더 자세한 콜백입니다.

매개변수
elapsedTime long

context IInvocationContext

invocationFailed

public void invocationFailed (FailureDescription failure)

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

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

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

invocationFailed

public void invocationFailed (Throwable cause)

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

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

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

invocationSkipped

public void invocationSkipped (SkipReason reason)

호출을 건너뛴 것으로 보고

매개변수
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

테스트 호출 시작을 보고합니다.

TradeFederation 프레임워크에서 자동으로 호출됩니다. 여러 기기 보고를 지원하려면 보고자가 이 메서드를 재정의해야 합니다.

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

logAssociation

public 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입니다.

testLogForward

public void testLogForward (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream)

먼저 로그를 저장하는 대신 testLog만 전달합니다.

매개변수
dataName String

dataType LogDataType

dataStream InputStreamSource

testLogSaved

public 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입니다.