Detektor ILogSaver

public interface ILogSaverListener
implements ITestInvocationListener

com.android.tradefed.result.ILogSaverListener


Umożliwia ITestInvocationListener nasłuchiwanie zapisywania plików dziennika.

Dzięki temu wiele funkcji ITestInvocationListener może używać tego samego zapisanego pliku dziennika podczas generowania raportów. Zapobiega to zapisywaniu pliku przez każdego słuchacza osobno, gdy wywoływana jest funkcja ITestLogger.testLog(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource).

Klasy implementujące ten interfejs powinny mieć świadomość, że funkcja testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) będzie wywoływana za każdym razem, gdy wywołana jest metoda ITestLogger.testLog(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource).

Ta klasa przekazuje też globalną instancję ILogSaver, aby ITestInvocationListener mogły zapisywać dodatkowe pliki w tej samej lokalizacji.

Podsumowanie

Metody publiczne

default void logAssociation(String dataName, LogFile logFile)

W niektórych przypadkach log musi być silnie powiązany z przypadkami testowymi, ale nie można tego zrobić bezpośrednio w wywołaniu testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile).

default void setLogSaver(ILogSaver logSaver)

Ustaw ILogSaver, aby umożliwić implementatorowi zapisywanie plików.

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

Wywoływany podczas zapisywania dziennika testu.

Metody publiczne

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

W niektórych przypadkach log musi być silnie powiązany z przypadkami testowymi, ale nie można tego zrobić bezpośrednio w wywołaniu testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile). Dzięki temu wywołaniu zwrotnemu można wyraźnie powiązać dane.

Parametry
dataName String: nazwa danych

logFile LogFile: LogFile, który został wcześniej zarejestrowany i powinien być powiązany z przypadkiem testu.

setLogSaver

public void setLogSaver (ILogSaver logSaver)

Ustaw ILogSaver, aby umożliwić implementatorowi zapisywanie plików.

Parametry
logSaver ILogSaver: ILogSaver

testLogSaved

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

Wywoływany podczas zapisywania dziennika testu.

Należy używać go zamiast atrybutu ITestInvocationListener#testLog(String, LogDataType, InputStreamSource).

Parametry
dataName String: opisowa nazwa danych typu String, np. „device_logcat”. Uwaga:Nazwa danych może nie być unikalna dla każdego wywołania. Implementatorzy muszą mieć możliwość obsługi wielu wywołań z tą samą nazwą danych.

dataType LogDataType: LogDataType danych

dataStream InputStreamSource: InputStreamSource danych. Implementatorzy powinni wywołać metodę createInputStream, aby rozpocząć odczytywanie danych, i zadbać o jej zamknięcie po zakończeniu.

logFile LogFile: LogFile zawierający metadane zapisanego pliku.