public class

LogLogcatRule

extends LoggingBaseRule
java.lang.Object
   ↳ org.junit.rules.ExternalResource
     ↳ android.support.test.rule.logging.LoggingBaseRule
       ↳ android.support.test.rule.logging.LogLogcatRule

Class Overview

When applied to a test class this Rule attempts to clear the Logcat buffer on the device before test method execution. The Rule then collects everything in the Logcat buffer after test method execution and logs it to a file on external storage. The default file location is maintained at getTestDir(String, String, int). The TestRule performs these actions through calling the device's logcat command.

Test methods can perform additional clearing and capturing of the Logcat buffer through the clearLogcat() and dumpLogcat(String) methods.

Usage: \@Rule public LogLogcatRule mLogLogcatRule = new LogLogcatRule();

Summary

Public Constructors
LogLogcatRule()
LogLogcatRule(File logFileOutputDirectory, String fileName)
Public Methods
void afterTest()
Extract logcat buffer to a file after test run.
void beforeTest()
Clear logcat buffer prior to test run.
static void clearLogcat()
Clear the current logcat buffer.
File dumpLogcat(String logFileName)
Dump the current state of the logcat buffer to a file in the test method's logging directory.
String getDefaultLogFileName()
Return the default log file name for this rule class.
[Expand]
Inherited Methods
From class android.support.test.rule.logging.LoggingBaseRule
From class org.junit.rules.ExternalResource
From class java.lang.Object
From interface org.junit.rules.TestRule

Public Constructors

public LogLogcatRule ()

public LogLogcatRule (File logFileOutputDirectory, String fileName)

Public Methods

public void afterTest ()

Extract logcat buffer to a file after test run.

public void beforeTest ()

Clear logcat buffer prior to test run.

public static void clearLogcat ()

Clear the current logcat buffer. This can be called from test method code, but will alter the results of the Rule's final log of the buffer at the end of the test method.

public File dumpLogcat (String logFileName)

Dump the current state of the logcat buffer to a file in the test method's logging directory. This method can be used when writing tests to record logcat at different points in time.

Parameters
logFileName where Logcat output is sent
Returns
  • the File where output was logged

public String getDefaultLogFileName ()

Return the default log file name for this rule class. A null return value indicates the rule doesn't log to a file.