测试失败监听器

public class TestFailureListener
extends Object implements ITestInvocationListener

java.lang.Object
com.android.tradefed.testtype.suite.TestFailureListener


侦听器用于在测试失败时根据请求采取操作,例如屏幕截图、错误报告、logcat 收集。

概括

公共构造函数

TestFailureListener ( devices, boolean bugReportOnFailure, boolean rebootOnFailure) TestFailureListener ( devices, boolean bugReportOnFailure, boolean rebootOnFailure)

公共方法

void applyModuleConfiguration (boolean bugreportOnFailure)

允许通过模块特定配置覆盖失败时捕获的调用设置。

void join ()

加入所有 logcat 捕获线程以确保它们终止。

void setLogger ( ITestLogger logger)

设置日志的保存位置。

void testFailed ( TestDescription test, String trace)

报告单个测试用例的失败。

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

提供来自测试调用的关联日志或调试数据。

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

将日志转发到记录器,不要从 #testLog 回调中执行此操作,就好像 TestFailureListener 是链的一部分一样,这将导致无限循环。

公共构造函数

测试失败监听器

public TestFailureListener ( devices, 
                boolean bugReportOnFailure, 
                boolean rebootOnFailure)

参数
devices

bugReportOnFailure boolean

rebootOnFailure boolean

公共方法

应用模块配置

public void applyModuleConfiguration (boolean bugreportOnFailure)

允许通过模块特定配置覆盖失败时捕获的调用设置。

参数
bugreportOnFailure boolean : true 捕获测试失败的错误报告。否则为假。

加入

public void join ()

加入所有 logcat 捕获线程以确保它们终止。

设置记录器

public void setLogger (ITestLogger logger)

设置日志的保存位置。

参数
logger ITestLogger

测试失败

public void testFailed (TestDescription test, 
                String trace)

报告单个测试用例的失败。

将在 testStarted 和 testEnded 之间调用。

参数
test TestDescription :标识测试

trace String : 失败的堆栈跟踪

测试日志

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

提供来自测试调用的关联日志或调试数据。

必须在ERROR(/ITestInvocationListener#invocationFailed(Throwable))ERROR(/ITestInvocationListener#invocationEnded(long))之前调用

TradeFederation 框架将自动调用此方法,提供主机日志和设备 logcat(如果适用)。

参数
dataName String :数据的String描述性名称。例如“device_logcat”。注意 每次调用时 dataName 可能不是唯一的。即实现者必须能够处理具有相同 dataName 的多个调用

dataType LogDataType :数据的LogDataType

dataStream InputStreamSource :数据的InputStreamSource 。实现者应该调用 createInputStream 来开始读取数据,并确保完成后关闭生成的 InputStream。调用者应确保数据源保持存在且可访问,直到 testLog 方法完成。

测试日志转发

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

将日志转发到记录器,不要从 #testLog 回调中执行此操作,就好像 TestFailureListener 是链的一部分一样,这将导致无限循环。

参数
dataName String

dataType LogDataType

dataStream InputStreamSource