ShardListener

public class ShardListener
extends CollectingTestListener implements ISupportGranularResults

java.lang.Object
   ↳ com.android.tradefed.result.CollectioningTestListener
     ↳ com.android.tradefed.invoker.ShardListener


ITestInvocationListener thu thập kết quả từ một mảnh lệnh gọi (còn gọi là một lệnh gọi phân tách để chạy song song trên nhiều tài nguyên) và chuyển tiếp các kết quả đó đến một trình nghe khác.

Tóm tắt

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

ShardListener(ITestInvocationListener main)

Tạo ShardListener.

Phương thức công khai

getUnderlyingResultReporter()
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(FailureDescription failure)

Báo cáo lệnh gọi không hoàn tất 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 invocationSkipped(SkipReason reason)

Báo cáo một lệnh gọi là đã bỏ qua

void invocationStarted(IInvocationContext context)

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

void logAssociation(String dataName, LogFile logFile)

Trong một số trường hợp, nhật ký phải được liên kết chặt chẽ với một trường hợp kiểm thử, nhưng không thể thực hiện việc này trên lệnh gọi lại testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) trực tiếp.

void setSupportGranularResults(boolean enableGranularResults)
boolean supportGranularResults()

Trả về True nếu trình báo cáo hỗ trợ kết quả chi tiết, trả về false nếu không.

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 testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

void testModuleEnded()

Báo cáo khi kết thúc chạy mô-đun.

void testModuleStarted(IInvocationContext moduleContext)

Báo cáo thời điểm bắt đầu chạy một mô-đun.

void testRunEnded(long elapsedTime, runMetrics)

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

void testRunFailed(FailureDescription failure)

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

void testRunFailed(String failureMessage)

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.

void testRunStarted(String name, int numTests, int attemptNumber, long startTime)

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

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

ShardListener

public ShardListener (ITestInvocationListener main)

Tạo ShardListener.

Tham số
main ITestInvocationListener: ITestInvocationListener cần chuyển tiếp kết quả. Để ngăn chặn các xung đột với các ShardListener khác, đối tượng này sẽ đồng bộ hoá trên main khi chuyển tiếp kết quả. Và kết quả sẽ chỉ được gửi sau khi phân đoạn lệnh gọi hoàn tất.

Phương thức công khai

getOverRollResultReporter

public  getUnderlyingResultReporter ()

Giá trị trả về

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, 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

kích hoạt không thành công

public void invocationFailed (FailureDescription failure)

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ố
failure FailureDescription: FailureDescription mô tả nguyên nhân gây ra lỗi

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

invocationSkipped

public void invocationSkipped (SkipReason reason)

Báo cáo một lệnh gọi là đã bỏ qua

Tham số
reason SkipReason

invocationStarted

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

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

Trong một số trường hợp, nhật ký phải được liên kết chặt chẽ với một trường hợp kiểm thử, nhưng không thể thực hiện việc này trên lệnh gọi lại testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) trực tiếp. Do đó, lệnh gọi lại này cho phép cung cấp một mối liên kết mạnh mẽ một cách rõ ràng.

Tham số
dataName String: Tên của dữ liệu

logFile LogFile: LogFile đã được ghi lại trước đó và phải được liên kết với trường hợp kiểm thử.

setSupportGranularResults

public void setSupportGranularResults (boolean enableGranularResults)

Tham số
enableGranularResults boolean

supportGranularKết quả

public boolean supportGranularResults ()

Trả về True nếu trình báo cáo hỗ trợ kết quả chi tiết, trả về false nếu không hỗ trợ.

Giá trị trả về
boolean

testLog

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 ý rằng dataName không được 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.

testLog đã lưu

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

Tham số
dataName String

dataType LogDataType

dataStream InputStreamSource

logFile LogFile

testModuleEnded

public void testModuleEnded ()

Báo cáo kết thúc quá trình chạy mô-đun.

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

Báo cáo thời điểm bắt đầu chạy một mô-đun. Lệnh gọi lại này được liên kết với testModuleEnded() và không bắt buộc trong trình tự. Tệp này chỉ được dùng trong quá trình chạy sử dụng các mô-đun: trình chạy dựa trên bộ.

Tham số
moduleContext IInvocationContext: IInvocationContext của mô-đun.

TestRun kết thúc

public void testRunEnded (long elapsedTime, 
                 runMetrics)

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

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 ở cuối một lần chạy kiểm thử

testRunFailed

public void testRunFailed (FailureDescription failure)

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

Tham số
failure FailureDescription: FailureDescription mô tả lỗi và ngữ cảnh của lỗi đó.

testRunFailed không thành công

public void testRunFailed (String failureMessage)

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.

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

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

public void testRunStarted (String name, 
                int numTests, 
                int attemptNumber, 
                long startTime)

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

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

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

attemptNumber int: số thứ tự, xác định các lần thử khác nhau của cùng một runName chạy nhiều lần. attemptNumber được lập chỉ mục từ 0 và phải tăng lên mỗi khi một lần chạy mới diễn ra. Ví dụ: Một kiểm thử được thử lại chi tiết 3 lần, thì tổng số lần chạy sẽ là 4 lần trong cùng một runName và attemptNumber sẽ từ 0 đến 3.

startTime long: thời gian bắt đầu chạy, được đo bằng System.currentTimeMillis()