Báo cáo lỗi

public class BugreportCollector
extends Object implements ITestInvocationListener

java.lang.Object
   ↳ com.android.tradefed.result.BugreportCollector


ITestInvocationListener truyền qua thu thập báo cáo lỗi khi các sự kiện có thể định cấu hình xảy ra, sau đó gọi ITestInvocationListener#testLog trên các thành phần con sau khi thu thập mỗi báo cáo lỗi.

Hành vi: (FIXME: hoàn tất phần này)

  • Ghi lại sau mỗi lần nếu có bất kỳ trường hợp kiểm thử nào không thành công
  • Ghi lại sau mỗi trường hợp kiểm thử
  • Ghi lại sau mỗi trường hợp kiểm thử không thành công
  • Quay hình

Tóm tắt

Lớp lồng ghép

class BugreportCollector.Predicate

Một thuộc tính đầy đủ mô tả thời điểm ghi lại báo cáo lỗi. 

interface BugreportCollector.SubPredicate

 

Trường

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Một thuộc tính xác định trước sẽ kích hoạt sau mỗi trường hợp kiểm thử không thành công

public static final BugreportCollector.Predicate AT_START

Một thuộc tính xác định trước sẽ kích hoạt khi lệnh gọi đầu tiên bắt đầu

Hàm khởi tạo công khai

BugreportCollector(ITestInvocationListener listener, ITestDevice testDevice)

Phương thức công khai

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

Chặn cho đến khi trình 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, cho dù thành công hay do một số điều kiện lỗi.

void invocationFailed(Throwable cause)

Báo cáo một lệnh gọi chưa hoàn tất do một số điều kiện lỗi.

void invocationStarted(IInvocationContext context)

Báo cáo thời điểm bắt đầu lệnh gọi kiểm thử.

void setAsynchronous(boolean asynchronous)

Đặt xem tính năng thu thập báo cáo lỗi có thu thập báo cáo lỗi trong một luồng khác hay không (asynchronous = true) hoặc chặn phương thức gọi cho đến khi thu thập được báo cáo lỗi (asynchronous = false).

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) để chờ thiết bị kết nối mạng 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 kiểm thử nguyên tử gắn cờ giả định một điều kiện là sai

void testEnded(TestDescription test, testMetrics)

Báo cáo kết thúc quá trình thực thi của một trường hợp kiểm thử riêng lẻ.

void testFailed(TestDescription test, String trace)

Báo cáo lỗi của một trường hợp kiểm thử riêng lẻ.

void testIgnored(TestDescription test)

Được gọi khi một chương trình kiểm thử sẽ không chạy, thường là do một phương thức kiểm thử được chú thích bằng org.junit.Ignore.

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

Cung cấp nhật ký hoặc dữ liệu gỡ lỗi liên quan từ lệnh gọi kiểm thử.

void testRunEnded(long elapsedTime, runMetrics)

Báo cáo kết thúc quá trình chạy kiểm thử.

void testRunFailed(String errorMessage)

Không thể hoàn tất quá trình chạy kiểm thử báo cáo do lỗi nghiêm trọng.

void testRunStarted(String runName, int testCount)

Báo cáo thời điểm bắt đầu chạy kiểm thử.

void testRunStopped(long elapsedTime)

Quá trình chạy kiểm thử báo cáo đã dừng trước khi hoàn tất do yêu cầu của người dùng.

void testStarted(TestDescription test)

Báo cáo thời điểm bắt đầu một trường hợp kiểm thử riêng lẻ.

Trường

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 kiểm thử không thành công

AT_START

public static final BugreportCollector.Predicate AT_START

Một thuộc tính được xác định trước sẽ kích hoạt khi lệnh gọi đầu tiên bắt đầu

Hàm khởi tạo công khai

BugreportCollector

public BugreportCollector (ITestInvocationListener listener, 
                ITestDevice testDevice)

Tham số
listener ITestInvocationListener

testDevice ITestDevice

Phương thức công khai

addPredicate

public void addPredicate (BugreportCollector.Predicate p)

Tham số
p BugreportCollector.Predicate

blockUntilIdle

public void blockUntilIdle ()

Chặn cho đến khi trình thu thập không thu thập bất kỳ báo cáo lỗi nào. Nếu trình thu thập không chủ động thu thập báo cáo lỗi, hãy trả về ngay lập tức

getSummary

public TestSummary getSummary ()

Cho phép InvocationListener trả về bản tóm tắt.

Giá trị trả về
TestSummary TestSummary tóm tắt quá trình chạy hoặc giá trị rỗng

gọi đã kết thúc

public void invocationEnded (long elapsedTime)

Báo cáo rằng lệnh gọi đã kết thúc, cho dù thành công hay do một số điều kiện lỗi.

Sẽ được khung TradeFederation tự động gọi.

Tham số
elapsedTime long: thời gian đã trôi qua của lệnh gọi tính bằng mili giây

invocationFailed

public void invocationFailed (Throwable cause)

Báo cáo một lệnh gọi chưa hoàn tất do một số điều kiện lỗi.

Sẽ được khung TradeFederation tự động gọi.

Tham số
cause Throwable: nguyên nhân Throwable gây ra lỗi

đã gọi

public void invocationStarted (IInvocationContext context)

Báo cáo thời điểm bắt đầu lệnh gọi kiểm thử.

Sẽ được khung TradeFederation tự động gọi. Trình báo cáo cần ghi đè phương thức này để hỗ trợ báo cáo nhiều thiết bị.

Tham số
context IInvocationContext: thông tin về lệnh gọi

setAsynchronous

public void setAsynchronous (boolean asynchronous)

Đặt xem bộ sưu tập báo cáo lỗi sẽ thu thập báo cáo lỗi trong một luồng khác (asynchronous = true) hay chặn phương thức gọi cho đến khi báo cáo lỗi được ghi lại (asynchronous = false).

Tham 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 là null, BugreportCollector sẽ quay lại hành vi mặc định là chuyển đổi tuần tự tên của sự kiện đã thu thập báo cáo lỗi.

Tham số
name String

setDeviceWaitTime

public void setDeviceWaitTime (int waitTime)

Thiết lập thời gian (tính bằng giây) để chờ thiết bị có kết nối mạng trước khi chúng ta cố gắng ghi lại báo cáo lỗi. Nếu giá trị là âm, hệ thống sẽ không thực hiện kiểm tra. Mọi DeviceNotAvailableException gặp phải trong quá trình kiểm tra này sẽ được ghi lại và bỏ qua.

Tham số
waitTime int

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                String trace)

Được gọi khi một kiểm thử nguyên tử gắn cờ giả định một điều kiện là sai

Tham số
test TestDescription: xác định kiểm thử

trace String: dấu vết ngăn xếp của lỗi

testEnded

public void testEnded (TestDescription test, 
                 testMetrics)

Báo cáo kết thúc quá trình thực thi của một trường hợp kiểm thử riêng lẻ.

Nếu testFailed(TestDescription, FailureDescription) không được gọi, thì kiểm thử này đã vượt qua. Ngoài ra, hàm này còn trả về mọi chỉ số khoá/giá trị có thể đã được phát ra trong quá trình thực thi trường hợp kiểm thử.

Tham số
test TestDescription: xác định kiểm thử

testMetrics : ERROR(/Map) của các chỉ số được phát ra

testFailed

public void testFailed (TestDescription test, 
                String trace)

Báo cáo lỗi của một trường hợp kiểm thử riêng lẻ.

Sẽ được gọi trong khoảng thời gian từ testStarted và testCancelled.

Tham số
test TestDescription: xác định kiểm thử

trace String: dấu vết ngăn xếp của lỗi

Đã bỏ qua kiểm thử

public void testIgnored (TestDescription test)

Được gọi khi một quy trình kiểm thử không chạy, thường vì một phương thức kiểm thử được chú thích bằng org.junit.Ignore.

Tham số
test TestDescription: xác định kiểm thử

nhật ký kiểm thử

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

Cung cấp nhật ký hoặc dữ liệu gỡ lỗi liên quan từ lệnh gọi kiểm thử.

Phải được gọi trước ERROR(/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à nếu có, logcat của thiết bị.

Tham 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à trình triển khai phải có khả năng xử lý nhiều lệnh gọi có cùng dataName

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 thu được khi hoàn tất. Phương thức gọi phải đảm bảo nguồn dữ liệu vẫn có và có thể truy cập được cho đến khi phương thức testLog hoàn tất.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

Báo cáo kết thúc lần chạy thử nghiệm.

Tham số
elapsedTime long: thời gian đã trôi qua do thiết bị báo cáo, tính bằng mili giây

runMetrics : các cặp khoá-giá trị được báo cáo vào cuối lần chạy kiểm thử

testRunFailed

public void testRunFailed (String errorMessage)

Không hoàn tất được quá trình chạy thử nghiệm báo cáo do xảy ra lỗi nghiêm trọng.

Tham số
errorMessage String: String mô tả lý do không chạy được.

Đã bắt đầu kiểm thử

public void testRunStarted (String runName, 
                int testCount)

Báo cáo thời điểm bắt đầu chạy kiểm thử.

Tham số
runName String: tên lần chạy kiểm thử

testCount int: tổng số bài kiểm thử trong lần chạy kiểm thử

testRunStopped

public void testRunStopped (long elapsedTime)

Đã dừng chạy thử nghiệm báo cáo trước khi hoàn tất do có yêu cầu của người dùng.

VIỆC CẦN LÀM: hiện không sử dụng, hãy cân nhắc xoá

Tham số
elapsedTime long: thời gian đã trôi qua theo báo cáo của thiết bị, tính bằng mili giây

testStarted

public void testStarted (TestDescription test)

Báo cáo thời điểm bắt đầu một trường hợp kiểm thử riêng lẻ. Giao diện cũ, nên sử dụng testStarted(com.android.tradefed.result.TestDescription) bất cứ khi nào có thể.

Tham số
test TestDescription: xác định kiểm thử