Reporter
Trait whose instances collect the results of a running suite of tests and presents those results in some way to the user. Instances of this trait can be called "report functions" or "reporters."
Reporters receive test results via fifteen events. Each event is fired to pass a particular kind of information to the reporter. The events are:
Reporters may be implemented such that they only present some of the reported events to the user. For example, you could define a reporter class that does nothing in response to SuiteStarting
events. Such a class would always ignore SuiteStarting
events.
The term test as used in the TestStarting
, TestSucceeded
, and TestFailed
event names is defined abstractly to enable a wide range of test implementations. ScalaTest's style traits (subclasse of trait Suite
) fire TestStarting
to indicate they are about to invoke one of their tests, TestSucceeded
to indicate a test returned normally, and TestFailed
to indicate a test completed abruptly with an exception. Although the execution of a Suite
subclass's tests will likely be a common event reported via the TestStarting
, TestSucceeded
, and TestFailed
events, because of the abstract definition of “test” used by the the event classes, these events are not limited to this use. Information about any conceptual test may be reported via the TestStarting
, TestSucceeded
, and TestFailed
events.
Likewise, the term suite as used in the SuiteStarting
, SuiteAborted
, and SuiteCompleted
event names is defined abstractly to enable a wide range of suite implementations. Object Runner
fires SuiteStarting
to indicate it is about to invoke run
on a Suite
, SuiteCompleted
to indicate a Suite
's run
method returned normally, and SuiteAborted
to indicate a Suite
's run
method completed abruptly with an exception. Similarly, class Suite
fires SuiteStarting
to indicate it is about to invoke run
on a nested Suite
, SuiteCompleted
to indicate a nested Suite
's run
method returned normally, and SuiteAborted
to indicate a nested Suite
's run
method completed abruptly with an exception. Although the execution of a Suite
's run
method will likely be a common event reported via the SuiteStarting
, SuiteAborted
, and SuiteCompleted
events, because of the abstract definition of "suite" used by the event classes, these events are not limited to this use. Information about any conceptual suite may be reported via the SuiteStarting
, SuiteAborted
, and SuiteCompleted
events.
== Extensibility ==
You can create classes that extend Reporter
to report test results in custom ways, and to report custom information passed as an event "payload." Reporter
classes can handle events in any manner, including doing nothing.
Attributes
- Graph
-
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait ResourcefulReporter