버그 신고 수집기
public class BugreportCollector
extends Object
implements ITestInvocationListener
java.lang.Object | |
↳ | com.android.tradefed.result.BugreportCollector |
구성 가능한 이벤트가 발생할 때 버그 보고서를 수집한 다음 각 버그 보고서가 수집된 후 해당 하위 항목에서 ITestInvocationListener#testLog
호출하는 통과 ITestInvocationListener
입니다.
- 테스트 케이스가 실패한 경우 각각 이후에 캡처
- 각 테스트 케이스 이후 캡처
- 실패한 각 테스트 사례 이후 캡처
- 포착
요약
중첩 클래스 | |
---|---|
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) 버그 신고 수집이 다른 스레드에서 버그 신고를 수집해야 하는지( |
void | setDescriptiveName (String name) 버그 보고서를 기록할 때 사용할 설명 이름을 설정합니다. |
void | setDeviceWaitTime (int waitTime) 버그 보고서 캡처를 시도하기 전에 장치가 온라인 상태가 될 때까지 기다리는 시간(초)을 설정합니다. |
void | testAssumptionFailure ( TestDescription test, String trace) 원자 테스트에서 거짓 조건을 가정한다고 플래그를 지정할 때 호출됩니다. |
void | testEnded ( TestDescription test, testMetrics) 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) 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
각 테스트 사례가 실패한 후에 실행되는 사전 정의된 조건자
공개 생성자
버그 신고 수집기
public BugreportCollector (ITestInvocationListener listener, ITestDevice testDevice)
매개변수 | |
---|---|
listener | ITestInvocationListener |
testDevice | ITestDevice |
공개 메소드
addPredicate
public void addPredicate (BugreportCollector.Predicate p)
매개변수 | |
---|---|
p | BugreportCollector.Predicate |
blockUntilIdle
public void blockUntilIdle ()
수집기가 버그 보고서를 수집하지 않을 때까지 차단합니다. 수집가가 버그 신고를 적극적으로 수집하지 않는 경우 즉시 반환하세요.
getSummary
public TestSummary getSummary ()
InvocationListener가 요약을 반환하도록 허용합니다.
보고 | |
---|---|
TestSummary | 실행을 요약하는 TestSummary 또는 null |
호출종료됨
public void invocationEnded (long elapsedTime)
성공적으로 또는 일부 오류 조건으로 인해 호출이 종료되었음을 보고합니다.
TradeFederation 프레임워크에 의해 자동으로 호출됩니다.매개변수 | |
---|---|
elapsedTime | long : 호출 경과 시간(ms) |
호출 실패
public void invocationFailed (Throwable cause)
일부 오류 조건으로 인해 불완전한 호출을 보고합니다.
TradeFederation 프레임워크에 의해 자동으로 호출됩니다.매개변수 | |
---|---|
cause | Throwable : Throwable 실패 원인 |
호출시작됨
public void invocationStarted (IInvocationContext context)
테스트 호출의 시작을 보고합니다.
TradeFederation 프레임워크에 의해 자동으로 호출됩니다. 보고자는 여러 장치 보고를 지원하기 위해 이 방법을 재정의해야 합니다.
매개변수 | |
---|---|
context | IInvocationContext : 호출에 대한 정보 |
비동기화 설정
public void setAsynchronous (boolean asynchronous)
버그 신고 수집이 다른 스레드에서 버그 신고를 수집해야 하는지( asynchronous = true
), 아니면 버그 신고가 캡처될 때까지 호출자를 차단해야 하는지( asynchronous = false
) 설정합니다.
매개변수 | |
---|---|
asynchronous | boolean |
setDescriptiveName
public void setDescriptiveName (String name)
버그 보고서를 기록할 때 사용할 설명 이름을 설정합니다. null
인 경우 BugreportCollector
버그 신고를 수집하게 만든 이벤트 이름을 직렬화하는 기본 동작으로 대체됩니다.
매개변수 | |
---|---|
name | String |
setDeviceWaitTime
public void setDeviceWaitTime (int waitTime)
버그 보고서 캡처를 시도하기 전에 장치가 온라인 상태가 될 때까지 기다리는 시간(초)을 설정합니다. 음수인 경우 검사가 수행되지 않습니다. 이 확인 중에 발생한 모든 DeviceNotAvailableException
기록되고 무시됩니다.
매개변수 | |
---|---|
waitTime | int |
테스트가정실패
public void testAssumptionFailure (TestDescription test, String trace)
원자 테스트에서 거짓 조건을 가정한다고 플래그를 지정할 때 호출됩니다.
매개변수 | |
---|---|
test | TestDescription : 테스트를 식별합니다. |
trace | String : 실패 스택 추적 |
테스트 종료됨
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 : 실패 스택 추적 |
테스트는 무시됨
public void testIgnored (TestDescription test)
일반적으로 테스트 메서드에 org.junit.Ignore라는 주석이 달려 있기 때문에 테스트가 실행되지 않을 때 호출됩니다.
매개변수 | |
---|---|
test | TestDescription : 테스트를 식별합니다. |
테스트로그
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을 닫아야 합니다. 호출자는 testLog 메서드가 완료될 때까지 데이터 소스가 계속 존재하고 액세스 가능한지 확인해야 합니다. |
테스트실행이 종료됨
public void testRunEnded (long elapsedTime,runMetrics)
테스트 실행 종료를 보고합니다. FIXME: 서로 다른 유형의 두 개의 Map<> 인터페이스를 가질 수 없으므로 여기서는 HashMap을 사용해야 합니다.
매개변수 | |
---|---|
elapsedTime | long : 장치가 보고한 경과 시간(밀리초) |
runMetrics | Metric 사용한 테스트 실행이 끝나면 보고된 키-값 쌍입니다. |
테스트실행실패
public void testRunFailed (String errorMessage)
치명적인 오류로 인해 테스트 실행을 완료하지 못했습니다.
매개변수 | |
---|---|
errorMessage | String : 실행 실패 이유를 설명하는 String 입니다. |
테스트실행시작됨
public void testRunStarted (String runName, int testCount)
테스트 실행의 시작을 보고합니다.
매개변수 | |
---|---|
runName | String : 테스트 실행 이름 |
testCount | int : 테스트 실행의 총 테스트 수 |
테스트실행중지됨
public void testRunStopped (long elapsedTime)
사용자 요청으로 인해 테스트 실행이 완료되기 전에 중지되었음을 보고합니다.
TODO: 현재 사용되지 않습니다. 제거를 고려하세요.
매개변수 | |
---|---|
elapsedTime | long : 장치가 보고한 경과 시간(밀리초) |
테스트시작됨
public void testStarted (TestDescription test)
개별 테스트 사례의 시작을 보고합니다. 이전 인터페이스는 가능하면 testStarted(com.android.tradefed.result.TestDescription)
사용해야 합니다.
매개변수 | |
---|---|
test | TestDescription : 테스트를 식별합니다. |
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2023-12-01(UTC)