Xml结果报告器

public class XmlResultReporter
extends CollectingTestListener implements ILogSaverListener

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


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

与 Ant 的格式化程序不同,此类不报告测试的执行时间。

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

从 dalvik runner 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)

保存测试日志时调用。

公共构造函数

Xml结果报告器

public XmlResultReporter ()

公共方法

调用结束

public void invocationEnded (long elapsedTime)

报告调用已终止,无论是成功还是由于某些错误情况。

将由 TradeFederation 框架自动调用。

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

设置日志保存程序

public void setLogSaver (ILogSaver logSaver)

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

参数
logSaver ILogSaverILogSaver

测试失败

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 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