ILogSaver监听器

public interface ILogSaverListener
implements ITestInvocationListener

com.android.tradefed.result.ILogSaverListener


允许ITestInvocationListener监听日志文件的保存时间。

这允许多个ITestInvocationListener在生成报告时使用相同的已保存日志文件,并避免在ITestLogger.testLog(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource)时每个侦听器单独保存文件ITestLogger.testLog(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource)被调用。

实现此接口的类应该注意,只要testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) ITestLogger.testLog(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource)被调用。

此类还传递全局ILogSaver实例,以便ITestInvocationListener可以在同一位置保存其他文件。

概括

公共方法

default void logAssociation (String dataName, LogFile logFile)

在某些情况下,日志必须与测试用例强关联,但有机会这样做就直接testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile)回调是不可能的。

default void setLogSaver ( ILogSaver logSaver)

设置ILogSaver以允许实现者保存文件。

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

保存测试日志时调用。

公共方法

日志关联

public void logAssociation (String dataName, 
                LogFile logFile)

在某些情况下,日志必须与测试用例强关联,但有机会这样做就直接testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile)回调是不可能的。因此,此回调允许显式提供强关联。

参数
dataName String : 数据的名称

logFile LogFile :之前记录的LogFile ,应与测试用例关联。

设置日志保存程序

public void setLogSaver (ILogSaver logSaver)

设置ILogSaver以允许实现者保存文件。

参数
logSaver ILogSaverILogSaver

测试日志已保存

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