ShardMainResultForwarder

public class ShardMainResultForwarder
extends ResultForwarder implements ILogSaverListener

java.lang.Object 中
   ↳ com.android.tradefed.result.ResultForwarder
     ↳ com.android.tradefed.invoker.ShardMainResultForwarder


一个 ResultForwarder,用于合并分片测试调用的结果。它只会 在所有分片调用完成后向监听器报告调用完成。

此类不是线程安全的。客户端应在以下情况下锁定此类: 发送测试结果,以防止无序调用调用回调。

摘要

公共构造函数

ShardMainResultForwarder( listeners, int expectedShards)

创建 ShardMainResultForwarder

公共方法

getListeners()

获取监听器列表。

void invocationEnded(long elapsedTime)

报告调用已终止(无论是成功终止还是由于某些错误) 条件。

void invocationEnded(long elapsedTime, IInvocationContext context)

用于区分哪个分片已完成的更详细的回调。

void invocationFailed(FailureDescription failure)

由于某些错误情况,报告不完整的调用。

void invocationFailed(Throwable cause)

由于某些错误情况,报告不完整的调用。

void invocationSkipped(SkipReason reason)

将调用报告为跳过

void invocationStarted(IInvocationContext context)

报告测试调用的开始。

void logAssociation(String dataName, LogFile logFile)

在某些情况下,日志必须与测试用例密切相关, 以此类推,testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) 回调。

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

仅转发 testLog,而不是先保存日志。

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

在保存测试日志时调用。

公共构造函数

ShardMainResultForwarder

public ShardMainResultForwarder ( listeners, 
                int expectedShards)

创建 ShardMainResultForwarder

参数
listeners :当ITestInvocationListener 个分片已完成

expectedShards int:分片数

公共方法

getListeners

public  getListeners ()

获取监听器列表。仅供子类使用。

返回
ITestInvocationListener 的列表。

invocationEnded

public void invocationEnded (long elapsedTime)

报告调用已终止(无论是成功终止还是由于某些错误) 条件。

将由 TradeFederation 框架自动调用。

参数
elapsedTime long:调用所用的时间(以毫秒为单位)

invocationEnded

public void invocationEnded (long elapsedTime, 
                IInvocationContext context)

用于区分哪个分片已完成的更详细的回调。

参数
elapsedTime long

context IInvocationContext

invocationFailed

public void invocationFailed (FailureDescription failure)

由于某些错误情况,报告不完整的调用。

将由 TradeFederation 框架自动调用。

参数
failure FailureDescription:描述失败原因的 FailureDescription

invocationFailed

public void invocationFailed (Throwable cause)

由于某些错误情况,报告不完整的调用。

将由 TradeFederation 框架自动调用。

参数
cause Throwable:失败的 Throwable 原因

已跳过调用

public void invocationSkipped (SkipReason reason)

将调用报告为跳过

参数
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

报告测试调用的开始。

将由 TradeFederation 框架自动调用。报告者需要覆盖 此方法支持多设备报告。

参数
context IInvocationContext:调用的相关信息

logAssociation

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 LogFileLogFile 之前记录,应与 测试用例。

testLogForward

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

仅转发 testLog,而不是先保存日志。

参数
dataName String

dataType LogDataType

dataStream InputStreamSource

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