PHP Class lithium\test\Report
While Lithium already comes with a text-based as well as web-based test interface, you
may use or extend the
Report class to create your own test reporter functionality. In
addition, you can also create your own custom templates for displaying results in a different
format, such as json.
Example usage, for built-in HTML format/reporter:
{{{
$report = new Report(array(
'title' => 'Test Report Title',
'group' => new Group(array('data' => array('\lithium\tests\cases\net\http\MediaTest'))),
'format' => 'html',
'reporter' => 'html'
));
$report->run();
Get the test stats:
$report->stats();
Get test results:
$report->results
}}}
You may also choose to filter the results of the test runs to obtain additional information.
For example, say you wish to calculate the cyclomatic complexity of the classes you are testing:
{{{
$report = new Report(array(
'title' => 'Test Report Title',
'group' => new Group(array('data' => array('\lithium\tests\cases\net\http\MediaTest'))),
'filters' => array('Complexity')
));
$report->run();
Get test results, including filter results:
$report->results
}}}
Show file
Open project: unionofrad/lithium
Class Usage Examples
Public Properties
Property |
Type |
Description |
|
$group |
object |
Contains an instance of lithium\test\Group, which contains all unit tests to be executed
this test run. |
|
$results |
array |
Group and filter results. |
|
$timer |
array |
Start and end timers. |
|
$title |
string |
Title of the group being run. |
|
Protected Properties
Property |
Type |
Description |
|
$_filters |
array |
An array key on fully-namespaced class names of the filter with options to be
applied for the filter as the value |
|
Public Methods
Protected Methods
Method |
Description |
|
_init ( ) : void |
Initializer. |
|
Method Details
__construct()
public method
public __construct ( array $config = [] ) : void |
$config |
array |
Options array for the test run. Valid options are:
- `'group'`: The test group with items to be run.
- `'filters'`: An array of filters that the test output should be run through.
- `'format'`: The format of the template to use, defaults to `'txt'`.
- `'reporter'`: The reporter to use. |
return |
void |
|
Collects Results from the test filters and aggregates them.
public collect ( string $class, array $results ) : void |
$class |
string |
Classname of the filter for which to aggregate results. |
$results |
array |
Array of the filter results for
later analysis by the filter itself. |
return |
void |
|
Renders the test output (e.g. layouts and filter templates).
Return statistics from the test runs.
Property Details
$_filters protected property
An array key on fully-namespaced class names of the filter with options to be
applied for the filter as the value
protected array $_filters |
return |
array |
|
Contains an instance of lithium\test\Group, which contains all unit tests to be executed
this test run.
public object $group |
return |
object |
|
Group and filter results.
public array $results |
return |
array |
|
public array $timer |
return |
array |
|
Title of the group being run.
public string $title |
return |
string |
|