Trình thu thập báo cáo lỗi
public class BugreportCollector
extends Object
implements ITestInvocationListener
java.lang.Object | |
↳ | com.android.tradefed.result.BugreportCollector |
Một ITestInvocationListener
truyền qua thu thập các báo cáo lỗi khi xảy ra các sự kiện có thể định cấu hình và sau đó gọi ITestInvocationListener#testLog
trên các phần tử con của nó sau khi mỗi báo cáo lỗi được thu thập.
- Ghi lại sau mỗi lần kiểm thử nếu có trường hợp thử nghiệm nào thất bại
- Chụp sau mỗi testcase
- Ghi lại sau mỗi testcase thất bại
- Chiếm lấy
Bản tóm tắt
Các lớp lồng nhau | |
---|---|
class | BugreportCollector.Predicate Vị từ đầy đủ mô tả thời điểm ghi lại báo cáo lỗi. |
interface | BugreportCollector.SubPredicate
|
Lĩnh vực | |
---|---|
public static final BugreportCollector.Predicate | AFTER_FAILED_TESTCASES Một vị từ được xác định trước sẽ kích hoạt sau mỗi trường hợp thử nghiệm thất bại |
public static final BugreportCollector.Predicate | AT_START Một vị từ được xác định trước sẽ kích hoạt khi lệnh gọi đầu tiên bắt đầu |
Nhà thầu xây dựng công cộng | |
---|---|
BugreportCollector ( ITestInvocationListener listener, ITestDevice testDevice) |
Phương pháp công cộng | |
---|---|
void | addPredicate ( BugreportCollector.Predicate p) |
void | blockUntilIdle () Chặn cho đến khi người thu thập không thu thập bất kỳ báo cáo lỗi nào. |
TestSummary | getSummary () Cho phép InvocationListener trả về một bản tóm tắt. |
void | invocationEnded (long elapsedTime) Báo cáo rằng lệnh gọi đã kết thúc, dù thành công hay do một số điều kiện lỗi. |
void | invocationFailed (Throwable cause) Báo cáo lệnh gọi không đầy đủ do một số tình trạng lỗi. |
void | invocationStarted ( IInvocationContext context) Báo cáo sự bắt đầu của lệnh gọi thử nghiệm. |
void | setAsynchronous (boolean asynchronous) Đặt xem bộ sưu tập báo cáo lỗi có nên thu thập báo cáo lỗi trong một chuỗi khác hay không ( |
void | setDescriptiveName (String name) Đặt tên mô tả để sử dụng khi ghi lại báo cáo lỗi. |
void | setDeviceWaitTime (int waitTime) Đặt thời gian (tính bằng giây) để đợi thiết bị Trực tuyến trước khi chúng tôi cố gắng ghi lại báo cáo lỗi. |
void | testAssumptionFailure ( TestDescription test, String trace) Được gọi khi một bài kiểm tra nguyên tử đánh dấu rằng nó giả định một điều kiện sai |
void | testEnded ( TestDescription test, testMetrics) testEnded ( TestDescription test, testMetrics) Báo cáo kết thúc thực hiện của một trường hợp thử nghiệm riêng lẻ. |
void | testFailed ( TestDescription test, String trace) Báo cáo sự thất bại của một trường hợp thử nghiệm riêng lẻ. |
void | testIgnored ( TestDescription test) Được gọi khi thử nghiệm không được chạy, thường là do phương thức thử nghiệm được chú thích bằng org.junit.Ignore. |
void | testLog (String dataName, LogDataType dataType, InputStreamSource dataStream) Cung cấp nhật ký liên quan hoặc dữ liệu gỡ lỗi từ lệnh gọi thử nghiệm. |
void | testRunEnded (long elapsedTime, runMetrics) testRunEnded (long elapsedTime, runMetrics) Báo cáo kết thúc quá trình chạy thử. |
void | testRunFailed (String errorMessage) Báo cáo chạy thử không hoàn tất được do có lỗi nghiêm trọng. |
void | testRunStarted (String runName, int testCount) Báo cáo việc bắt đầu chạy thử. |
void | testRunStopped (long elapsedTime) Báo cáo quá trình chạy thử đã dừng trước khi hoàn thành do yêu cầu của người dùng. |
void | testStarted ( TestDescription test) Báo cáo sự bắt đầu của một trường hợp thử nghiệm riêng lẻ. |
Lĩnh vực
SAU_FAILED_TESTCASES
public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES
Một vị từ được xác định trước sẽ kích hoạt sau mỗi trường hợp thử nghiệm thất bại
AT_START
public static final BugreportCollector.Predicate AT_START
Một vị từ được xác định trước sẽ kích hoạt khi lệnh gọi đầu tiên bắt đầu
Nhà thầu xây dựng công cộng
Trình thu thập báo cáo lỗi
public BugreportCollector (ITestInvocationListener listener, ITestDevice testDevice)
Thông số | |
---|---|
listener | ITestInvocationListener |
testDevice | ITestDevice |
Phương pháp công cộng
thêm vị từ
public void addPredicate (BugreportCollector.Predicate p)
Thông số | |
---|---|
p | BugreportCollector.Predicate |
chặnUntilIdle
public void blockUntilIdle ()
Chặn cho đến khi người thu thập không thu thập bất kỳ báo cáo lỗi nào. Nếu người thu thập không tích cực thu thập báo cáo lỗi, hãy quay lại ngay lập tức
lấyTóm tắt
public TestSummary getSummary ()
Cho phép InvocationListener trả về một bản tóm tắt.
Trả lại | |
---|---|
TestSummary | TestSummary tóm tắt quá trình chạy hoặc null |
lời mờiĐã kết thúc
public void invocationEnded (long elapsedTime)
Báo cáo rằng lệnh gọi đã kết thúc, dù thành công hay do một số điều kiện lỗi.
Sẽ được khung TradeFederation tự động gọi.Thông số | |
---|---|
elapsedTime | long : thời gian trôi qua của lệnh gọi tính bằng ms |
lời gọi không thành công
public void invocationFailed (Throwable cause)
Báo cáo lệnh gọi không đầy đủ do một số tình trạng lỗi.
Sẽ được khung TradeFederation tự động gọi.Thông số | |
---|---|
cause | Throwable : nguyên nhân Throwable của sự cố |
lời gọiBắt đầu
public void invocationStarted (IInvocationContext context)
Báo cáo sự bắt đầu của lệnh gọi thử nghiệm.
Sẽ được khung TradeFederation tự động gọi. Người báo cáo cần ghi đè phương pháp này để hỗ trợ báo cáo trên nhiều thiết bị.
Thông số | |
---|---|
context | IInvocationContext : thông tin về lời gọi |
setKhông đồng bộ
public void setAsynchronous (boolean asynchronous)
Đặt xem bộ sưu tập báo cáo lỗi có nên thu thập báo cáo lỗi trong một chuỗi khác hay không ( asynchronous = true
) hoặc chặn người gọi cho đến khi báo cáo lỗi được ghi lại ( asynchronous = false
).
Thông số | |
---|---|
asynchronous | boolean |
setDescriptiveName
public void setDescriptiveName (String name)
Đặt tên mô tả để sử dụng khi ghi lại báo cáo lỗi. Nếu null
, BugreportCollector
sẽ quay lại hành vi mặc định là sắp xếp theo thứ tự tên của sự kiện khiến báo cáo lỗi được thu thập.
Thông số | |
---|---|
name | String |
setDeviceWaitTime
public void setDeviceWaitTime (int waitTime)
Đặt thời gian (tính bằng giây) để đợi thiết bị Trực tuyến trước khi chúng tôi cố gắng ghi lại báo cáo lỗi. Nếu âm tính, sẽ không có kiểm tra nào được thực hiện. Mọi ngoại DeviceNotAvailableException
gặp phải trong quá trình kiểm tra này sẽ được ghi lại và bỏ qua.
Thông số | |
---|---|
waitTime | int |
kiểm traGiả địnhThất bại
public void testAssumptionFailure (TestDescription test, String trace)
Được gọi khi một bài kiểm tra nguyên tử đánh dấu rằng nó giả định một điều kiện sai
Thông số | |
---|---|
test | TestDescription : xác định bài kiểm tra |
trace | String : dấu vết lỗi của ngăn xếp |
kiểm traĐã kết thúc
public void testEnded (TestDescription test,testMetrics)
Báo cáo kết thúc thực hiện của một trường hợp thử nghiệm riêng lẻ.
Nếu testFailed(TestDescription, FailureDescription)
không được gọi thì thử nghiệm này đã đạt. Đồng thời trả về bất kỳ số liệu khóa/giá trị nào có thể được phát ra trong quá trình thực thi trường hợp kiểm thử.
Thông số | |
---|---|
test | TestDescription : xác định bài kiểm tra |
testMetrics | ERROR(/Map) của số liệu được phát ra |
thử nghiệm thất bại
public void testFailed (TestDescription test, String trace)
Báo cáo sự thất bại của một trường hợp thử nghiệm riêng lẻ.
Sẽ được gọi giữa testStarted và testEnded.
Thông số | |
---|---|
test | TestDescription : xác định bài kiểm tra |
trace | String : dấu vết lỗi của ngăn xếp |
kiểm traBỏ qua
public void testIgnored (TestDescription test)
Được gọi khi thử nghiệm không được chạy, thường là do phương thức thử nghiệm được chú thích bằng org.junit.Ignore.
Thông số | |
---|---|
test | TestDescription : xác định bài kiểm tra |
nhật ký kiểm tra
public void testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)
Cung cấp nhật ký liên quan hoặc dữ liệu gỡ lỗi từ lệnh gọi thử nghiệm.
Phải được gọi trướcERROR(/ITestInvocationListener#invocationFailed(Throwable))
hoặc ERROR(/ITestInvocationListener#invocationEnded(long))
Khung TradeFederation sẽ tự động gọi phương thức này, cung cấp nhật ký máy chủ và logcat thiết bị, nếu có.Thông số | |
---|---|
dataName | String : Tên mô tả String của dữ liệu. ví dụ: "device_logcat". Lưu ý dataName có thể không phải là duy nhất cho mỗi lệnh gọi. tức là người triển khai phải có khả năng xử lý nhiều cuộc gọi với cùng một tên dữ liệu |
dataType | LogDataType : LogDataType của dữ liệu |
dataStream | InputStreamSource : InputStreamSource của dữ liệu. Người triển khai nên gọi createInputStream để bắt đầu đọc dữ liệu và đảm bảo đóng inputStream kết quả khi hoàn tất. Người gọi phải đảm bảo nguồn dữ liệu vẫn hiện diện và có thể truy cập được cho đến khi phương thức testLog hoàn tất. |
thử nghiệmChạyĐã kết thúc
public void testRunEnded (long elapsedTime,runMetrics)
Báo cáo kết thúc quá trình chạy thử. CỐ ĐỊNH: Chúng tôi không thể có hai giao diện Map<> với loại khác nhau, vì vậy chúng tôi phải sử dụng HashMap tại đây.
Thông số | |
---|---|
elapsedTime | long : thiết bị đã báo cáo thời gian đã trôi qua, tính bằng mili giây |
runMetrics | Metric . |
thử nghiệm Chạy không thành công
public void testRunFailed (String errorMessage)
Báo cáo chạy thử không hoàn tất được do có lỗi nghiêm trọng.
Thông số | |
---|---|
errorMessage | String : String mô tả lý do chạy thất bại. |
thử nghiệmChạyBắt đầu
public void testRunStarted (String runName, int testCount)
Báo cáo việc bắt đầu chạy thử.
Thông số | |
---|---|
runName | String : tên chạy thử |
testCount | int : tổng số bài kiểm tra trong lần chạy thử |
thử nghiệmRunStopped
public void testRunStopped (long elapsedTime)
Báo cáo quá trình chạy thử đã dừng trước khi hoàn thành do yêu cầu của người dùng.
TODO: hiện chưa được sử dụng, hãy cân nhắc việc xóa
Thông số | |
---|---|
elapsedTime | long : thiết bị đã báo cáo thời gian đã trôi qua, tính bằng mili giây |
thử nghiệmBắt đầu
public void testStarted (TestDescription test)
Báo cáo sự bắt đầu của một trường hợp thử nghiệm riêng lẻ. Giao diện cũ hơn, nên sử dụng testStarted(com.android.tradefed.result.TestDescription)
bất cứ khi nào có thể.
Thông số | |
---|---|
test | TestDescription : xác định bài kiểm tra |
Nội dung và mã mẫu trên trang này phải tuân thủ các giấy phép như mô tả trong phần Giấy phép nội dung. Java và OpenJDK là nhãn hiệu hoặc nhãn hiệu đã đăng ký của Oracle và/hoặc đơn vị liên kết của Oracle.
Cập nhật lần gần đây nhất: 2023-12-01 UTC.