ILogSaverListener

public interface ILogSaverListener
implements ITestInvocationListener

com.android.tradefed.result.ILogSaverListener


允許 ITestInvocationListener 監聽記錄檔的儲存時間。

這樣一來,多個 ITestInvocationListener 就能在產生報表時使用同一個已儲存的記錄檔,避免在呼叫 ITestInvocationListener.testLog(String,LogDataType,InputStreamSource) 時,每個接聽程式都必須個別儲存檔案。

實作這個介面的類別應注意,每當呼叫 ITestInvocationListener.testLog(String,LogDataType,InputStreamSource) 時,系統都會呼叫 testLogSaved(String,LogDataType,InputStreamSource,LogFile)

這個類別也會傳遞全域 ILogSaver 例項,因此 ITestInvocationListener 可以將其他檔案儲存在相同位置。

摘要

公用方法

default void logAssociation(String dataName, LogFile logFile)

在某些情況下,記錄必須與測試案例密切相關,但無法在直接 testLogSaved(String,LogDataType,InputStreamSource,LogFile) 回呼中執行這項操作。

default void setLogSaver(ILogSaver logSaver)

設定 ILogSaver,允許實作者儲存檔案。

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

測試記錄儲存完畢時呼叫。

公用方法

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

在某些情況下,記錄必須與測試案例密切相關,但無法在直接 testLogSaved(String,LogDataType,InputStreamSource,LogFile) 回呼中執行此操作。因此,這個回呼可明確提供強關聯。

參數
dataName String:資料名稱

logFile LogFile:先前記錄的 LogFile,應與測試案例建立關聯。

setLogSaver

public void setLogSaver (ILogSaver logSaver)

設定 ILogSaver,允許實作者儲存檔案。

參數
logSaver ILogSaverILogSaver

testLogSaved

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

測試記錄儲存完畢時呼叫。

應取代 ITestInvocationListener.testLog(String,LogDataType,InputStreamSource) 使用。

參數
dataName String:資料的String說明名稱,例如「device_logcat」。注意:dataName 在每次呼叫時可能不具唯一性,也就是說,實作者必須能夠處理具有相同 dataName 的多項呼叫。

dataType LogDataType:資料的 LogDataType

dataStream InputStreamSource:資料的 InputStreamSource。實作者應呼叫 createInputStream 開始讀取資料,並確保在完成時關閉產生的 InputStream。

logFile LogFile:包含已儲存檔案中繼資料的 LogFile