XmlResultReporter

public class XmlResultReporter
extends CollectingTestListener implements ILogSaverListener

java.lang.Object
   ↳ com.android.tradefed.result.CollectingTestListener
     ↳ com.android.tradefed.result.XmlResultReporter


以与以下项一致的格式将 JUnit 结果写入 XML 文件 Ant 的 XMLJUnitResultFormatter。

与 Ant 的格式设置器不同,此类不会报告测试的执行时间。

收集内存中的所有测试信息,然后在调用完成时转储到文件。

从 dalvik 运行程序 XmlReportPrinter 移植。

结果文件将存储在通过 [--output-file-path]/[build_id] 构建的路径中

摘要

公共构造函数

XmlResultReporter()

公共方法

void invocationEnded(long elapsedTime)

报告调用已终止,无论是成功终止还是因某种错误条件而终止。

void setLogSaver(ILogSaver logSaver)

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

void testFailed(TestDescription test, String trace)

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

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

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

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

在保存测试日志时调用。

公共构造函数

XmlResultReporter

public XmlResultReporter ()

公共方法

invocationEnded

public void invocationEnded (long elapsedTime)

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

将由 TradeFederation 框架自动调用。

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

setLogSaver

public void setLogSaver (ILogSaver logSaver)

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

参数
logSaver ILogSaverILogSaver

testFailed

public void testFailed (TestDescription test, 
                String trace)

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

将在 testStarted 和 testEnded 之间调用。

参数
test TestDescription:标识测试

trace String:失败的堆栈轨迹

testLog

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 方法完成之前,数据源始终存在且可访问。

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