Package org.eclipse.jdt.junit

# Class TestRunListener

java.lang.Object
org.eclipse.jdt.junit.TestRunListener

public abstract class TestRunListener extends Object
A test run listener that can be registered at `JUnitCore.addTestRunListener(TestRunListener)` or as a contribution to the `org.eclipse.jdt.junit.testRunListeners` extension point. The latter approach has the advantage that the contributing plug-in is automatically loaded when a test run starts.

A test run starts with the call to `sessionLaunched(ITestRunSession)` and `sessionStarted(ITestRunSession)`, followed by calls to `testCaseStarted(ITestCaseElement)` and `testCaseFinished(ITestCaseElement)` for all test cases contained in the tree.

A test run session is ended with the call to `sessionFinished(ITestRunSession)`. After that call, no references must be kept to the session or any of the test cases or suites.

Since:
  3.3

## Constructor Summary

Constructors
Constructor
Description
`TestRunListener()`

## Method Summary

Modifier and Type
Method
Description
`void`
`sessionFinished(ITestRunSession session)`
A test run session has finished.
`void`
`sessionLaunched(ITestRunSession session)`
A test run session has been launched.
`void`
`sessionStarted(ITestRunSession session)`
A test run session has started.
`void`
`testCaseFinished(ITestCaseElement testCaseElement)`
A test case has ended.
`void`
`testCaseStarted(ITestCaseElement testCaseElement)`
A test case has started.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### TestRunListener

public TestRunListener()

## Method Details

### sessionLaunched

public void sessionLaunched(ITestRunSession session)
A test run session has been launched. The test tree is not available yet.

Important: The implementor of this method must not keep a reference to the session element after `sessionFinished(ITestRunSession)` has finished.

Parameters:
  `session` - the session that has just been launched
Since:
  3.6

### sessionStarted

public void sessionStarted(ITestRunSession session)
A test run session has started. The test tree can be accessed through the session element.

Important: The implementor of this method must not keep a reference to the session element after `sessionFinished(ITestRunSession)` has finished.

Parameters:
  `session` - the session that has just started.

### sessionFinished

public void sessionFinished(ITestRunSession session)
A test run session has finished. The test tree can be accessed through the session element.

Important: The implementor of this method must not keep the session element when the method is finished.

Parameters:
  `session` - the test

### testCaseStarted

public void testCaseStarted(ITestCaseElement testCaseElement)
A test case has started. The result can be accessed from the element.

Important: The implementor of this method must not keep a reference to the test case element after `sessionFinished(ITestRunSession)` has finished.

Parameters:
  `testCaseElement` - the test that has started to run

### testCaseFinished

public void testCaseFinished(ITestCaseElement testCaseElement)
A test case has ended. The result can be accessed from the element.

Important: The implementor of this method must not keep a reference to the test case element after `sessionFinished(ITestRunSession)` has finished.

Parameters:
  `testCaseElement` - the test that has finished running