LogSaverResultForwarder (Trình lưu giữ kết quả chuyển tiếp)

public class LogSaverResultForwarder
extends ResultForwarder implements ILogSaverListener

java.lang.Object
   ↳ com.android.tradefed.result.ResultForwarder
     ↳ com.android.tradefed.result.LogSaverResultForwarder


ResultForwarder để lưu nhật ký bằng trình bảo vệ tệp chung.

Tóm tắt

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

LogSaverResultForwarder(ILogSaver logSaver, listeners, IConfiguration config)

Phương thức công khai

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 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 phải có cơ hội thực hiện cứ vậy, trên testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) trực tiếp không thể gọi lại.

static void logFile( listeners, ILogSaver saver, InputStreamSource source, String name, LogDataType type)

Ghi nhật ký tệp cuối cùng trước khi hoàn tất

static void reportEndHostLog( listeners, ILogSaver saver, String name)

Báo cáo host_log từ phiên đang diễn ra.

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ử.

Ngoài ra, hãy lưu tệp nhật ký bằng ILogSaver toàn cục và gọi ILogSaverListener#testLogSaved(String, LogDataType, InputStreamSource, LogFile) cho những trình nghe triển khai giao diện ILogSaverListener.

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

Chỉ chuyển tiếp testLog thay vì lưu nhật ký trước.

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

Được gọi khi nhật ký kiểm thử được lưu.

Nếu LogSaverResultForwarder được gói trong một mã khác, hãy đảm bảo chúng ta chuyển tiếp Lệnh gọi lại testLogSaved cho các trình nghe trong đó.

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

LogSaverResultForwarder (Trình lưu giữ kết quả chuyển tiếp)

public LogSaverResultForwarder (ILogSaver logSaver, 
                 listeners, 
                IConfiguration config)

Tham số
logSaver ILogSaver

listeners

config IConfiguration

Phương thức công khai

invocationEnded

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

đã 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

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à nên được liên kết với trường hợp kiểm thử.

tệp nhật ký

public static void logFile ( listeners, 
                ILogSaver saver, 
                InputStreamSource source, 
                String name, 
                LogDataType type)

Ghi nhật ký tệp cuối cùng trước khi hoàn tất

Tham số
listeners

saver ILogSaver

source InputStreamSource

name String

type LogDataType

reportEndHostLog

public static void reportEndHostLog ( listeners, 
                ILogSaver saver, 
                String name)

Báo cáo host_log từ phiên đang diễn ra.

Tham số
listeners

saver ILogSaver

name String

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ị.

Ngoài ra, hãy lưu tệp nhật ký bằng ILogSaver toàn cục và gọi ILogSaverListener#testLogSaved(String, LogDataType, InputStreamSource, LogFile) cho những trình nghe triển khai giao diện ILogSaverListener.

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. Trình triển khai nên gọi createInputStream để bắt đầu đọc dữ liệu và đảm bảo đóng kết quả InputStream 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.

testLogForward

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

Chỉ chuyển tiếp testLog thay vì lưu nhật ký trước.

Tham số
dataName String

dataType LogDataType

dataStream InputStreamSource

testLog đã lưu

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

Được gọi khi nhật ký kiểm thử được lưu.

Nên được sử dụng thay cho ITestInvocationListener#testLog(String, LogDataType, InputStreamSource).

Nếu LogSaverResultForwarder được gói trong một mã khác, hãy đảm bảo chúng ta chuyển tiếp Lệnh gọi lại testLogSaved cho các trình nghe trong đó.

Tham số
dataName String: tên mô tả String của dữ liệu. ví dụ: "device_logcat". Ghi chú dataName không được 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 lệnh gọi có cùng dataName

dataType LogDataType: LogDataType của dữ liệu

dataStream InputStreamSource: InputStreamSource của dữ liệu. Trình triển khai nên gọi createInputStream để bắt đầu đọc dữ liệu và đảm bảo đóng kết quả InputStream khi hoàn tất.

logFile LogFile: LogFile chứa siêu dữ liệu của tệp đã lưu.