BugreportCollector

public class BugreportCollector
extends Object implements ITestInvocationListener

java.lang.Object의 클래스
   ↳ com.android.tradefed.result.BugreportCollector


구성 가능한 이벤트 시 버그 신고를 수집하는 패스 스루 ITestInvocationListener 발생 후 각 이벤트가 끝날 때마다 하위 요소에서 ITestInvocationListener#testLog를 호출합니다. 버그 신고가 수집됩니다.

동작: (FIXME: 완료)

  • 테스트 사례가 실패할 때마다 캡처
  • 각 테스트 사례 후 캡처
  • 각 테스트 사례 실패 후 캡처
  • 촬영하기

요약

중첩된 클래스

class BugreportCollector.Predicate

버그 신고를 캡처할 시기를 설명하는 전체 조건자입니다. 

interface BugreportCollector.SubPredicate

 

필드

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

실패한 각 테스트 사례 후에 실행되는 사전 정의된 조건자

public static final BugreportCollector.Predicate AT_START

첫 번째 호출이 시작될 때 실행되는 사전 정의된 조건자

공개 생성자

BugreportCollector(ITestInvocationListener listener, ITestDevice testDevice)

공개 메서드

void addPredicate(BugreportCollector.Predicate p)
void blockUntilIdle()

수집기가 버그 신고를 수집하지 않을 때까지 차단합니다.

TestSummary getSummary()

InvocationListener가 요약을 반환하도록 허용합니다.

void invocationEnded(long elapsedTime)

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

void invocationFailed(Throwable cause)

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

void invocationStarted(IInvocationContext context)

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

void setAsynchronous(boolean asynchronous)

bugreport 수집이 다른 스레드의 bugreport를 수집해야 하는지 여부를 설정합니다. (asynchronous = true)를 누르거나 버그 신고가 캡처될 때까지 발신자를 차단합니다. (asynchronous = false).

void setDescriptiveName(String name)

버그 신고를 기록할 때 사용할 설명이 포함된 이름을 설정합니다.

void setDeviceWaitTime(int waitTime)

캡처를 시도하기 전에 기기가 온라인 상태가 될 때까지 기다리는 시간 (초)을 버그 신고

void testAssumptionFailure(TestDescription test, String trace)

원자적 테스트에서 조건이 false라고 가정할 때 호출됩니다.

void testEnded(TestDescription test, testMetrics)

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

void testFailed(TestDescription test, String trace)

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

void testIgnored(TestDescription test)

테스트가 실행되지 않을 때 호출됩니다. 일반적으로 테스트 메서드가 다음과 같이 주석 처리되어 있기 때문입니다. org.junit.Ignore를 사용하세요.

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

테스트 호출의 관련 로그 또는 디버그 데이터를 제공합니다.

void testRunEnded(long elapsedTime, runMetrics)

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

void testRunFailed(String errorMessage)

치명적인 오류로 인해 테스트 실행을 완료하지 못했습니다.

void testRunStarted(String runName, int testCount)

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

void testRunStopped(long elapsedTime)

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

void testStarted(TestDescription test)

개별 테스트 사례의 시작을 보고합니다.

필드

after_FAILED_TESTCASES

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

각 테스트 사례가 실패할 때마다 실행되는 사전 정의된 조건자입니다.

AT_START

public static final BugreportCollector.Predicate AT_START

첫 번째 호출이 시작될 때 실행되는 사전 정의된 조건자

공개 생성자

BugreportCollector

public BugreportCollector (ITestInvocationListener listener, 
                ITestDevice testDevice)

매개변수
listener ITestInvocationListener

testDevice ITestDevice

공개 메서드

addPredicate

public void addPredicate (BugreportCollector.Predicate p)

매개변수
p BugreportCollector.Predicate

blockUntilIdle

public void blockUntilIdle ()

수집기가 버그 신고를 수집하지 않을 때까지 차단합니다. 수집기가 버그 신고를 수집하여 즉시 반환하면

가져오기 요약

public TestSummary getSummary ()

InvocationListener가 요약을 반환하도록 허용합니다.

반환 값
TestSummary 실행을 요약하는 TestSummary 또는 null

invocationEnded

public void invocationEnded (long elapsedTime)

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

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

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

invocationFailed

public void invocationFailed (Throwable cause)

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

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

매개변수
cause Throwable: 실패의 Throwable 원인

invocationStarted

public void invocationStarted (IInvocationContext context)

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

TradeFederation 프레임워크에서 자동으로 호출됩니다. 신고자가 이를 재정의해야 함 이 메서드를 사용하여 여러 기기 보고를 지원할 수 있습니다.

매개변수
context IInvocationContext: 호출에 관한 정보입니다.

setA비동기

public void setAsynchronous (boolean asynchronous)

bugreport 수집이 다른 스레드의 bugreport를 수집해야 하는지 여부를 설정합니다. (asynchronous = true)를 누르거나 버그 신고가 캡처될 때까지 발신자를 차단합니다. (asynchronous = false).

매개변수
asynchronous boolean

setDescriptiveName

public void setDescriptiveName (String name)

버그 신고를 기록할 때 사용할 설명이 포함된 이름을 설정합니다. null인 경우, BugreportCollector는 기본 동작으로 돌아갑니다. 버그 신고가 수집되도록 만든 이벤트입니다.

매개변수
name String

setDeviceWaitTime

public void setDeviceWaitTime (int waitTime)

캡처를 시도하기 전에 기기가 온라인 상태가 될 때까지 기다리는 시간 (초)을 bugreport. 음수인 경우 검사가 수행되지 않습니다. 모든 DeviceNotAvailableException 모두 기록되고 무시됩니다.

매개변수
waitTime int

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                String trace)

원자적 테스트에서 조건이 false라고 가정할 때 호출됩니다.

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

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

testEnded

public void testEnded (TestDescription test, 
                 testMetrics)

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

testFailed(TestDescription, FailureDescription)가 호출되지 않았다면 이 테스트는 통과한 것입니다. 또한 모든 키/값 반환 측정항목입니다.

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

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

테스트 실패

public void testFailed (TestDescription test, 
                String trace)

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

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

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

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

testIgnored

public void testIgnored (TestDescription test)

테스트가 실행되지 않을 때 호출됩니다. 일반적으로 테스트 메서드가 다음과 같이 주석 처리되어 있기 때문입니다. org.junit.Ignore를 사용하세요.

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

testLog

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

테스트 호출의 관련 로그 또는 디버그 데이터를 제공합니다.

ERROR(/ITestInvocationListener#invocationFailed(Throwable)) 전에 호출해야 합니다. ERROR(/ITestInvocationListener#invocationEnded(long))

TradeFederation 프레임워크는 이 메서드를 자동으로 호출하여 호스트 로그를 제공합니다. 그리고 해당하는 경우 기기 logcat입니다.

매개변수
dataName String: 데이터를 설명하는 String 이름입니다. 예: 'device_logcat' 참고 dataName은 호출별로 고유할 수 없습니다. 즉, 구현자는 dataName이 동일한 여러 호출

dataType LogDataType: 데이터의 LogDataType

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

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

테스트 실행 종료를 보고합니다. 수정: 두 개의 지도를 가질 수 없습니다<> 다른 유형의 인터페이스를 제공하기 때문에 여기서는 HashMap을 사용해야 합니다.

매개변수
elapsedTime long: 기기에서 보고된 경과 시간(밀리초)입니다.

runMetrics : Metric로 테스트 실행이 끝날 때 보고된 키-값 쌍입니다.

testRunFailed

public void testRunFailed (String errorMessage)

치명적인 오류로 인해 테스트 실행을 완료하지 못했습니다.

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

testRunStarted

public void testRunStarted (String runName, 
                int testCount)

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

매개변수
runName String: 테스트 실행 이름입니다.

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

testRunStop

public void testRunStopped (long elapsedTime)

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

TODO: 현재 사용되지 않습니다. 삭제하는 것이 좋습니다.

매개변수
elapsedTime long: 기기에서 보고된 경과 시간(밀리초)입니다.

testStarted

public void testStarted (TestDescription test)

개별 테스트 사례의 시작을 보고합니다. 이전 인터페이스이므로 가능하면 testStarted(com.android.tradefed.result.TestDescription)를 사용해야 합니다.

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