= Report Formats =
----
ref: http://groups.google.com/group/bitten/browse_thread/thread/537d240d0124cde0
Cut 'n paste from Allen Bierbaum's post.
----
The base element of the report must be "report" and have an attribute
"category" that is one of "test", "coverage" or "lint". Ex:
{{{
}}}
Inside the report there must be elements for each report type. The way the
data is captured is pretty flexible because it can either be in attributes
or in child elements.
== Test Reports ==
Test reports must have sub-elements of report of type "test". These
elements can have any of these attributes (or subelements with contained
cdata)
* '''duration:''' float duration of test
* '''status:''' string "success", "failure", "error", or "ignore" (Changed in 0.6: added "ignore")
* '''name:''' string name of the test
* '''fixture:''' string name of the test fixture
* '''file:''' path to test file relative to the base path for the build configuration
* '''stdout:''' The output from the test
* '''traceback:''' The traceback from any error or failure.
Example:
{{{
#!xml
0.073
success
bitten.tests.model.BuildConfigTestCase
test_config_update_name
bitten/tests/model.py
Renaming build configuration
}}}
== Coverage Reports ==
Similarly, coverage reports must be inside "coverage" elements. The
allowable attributes are:
* '''name:''' The name of the module being tested for coverage
* '''file:''' The name of the file relative to the base path in the build configuration
* '''percentage:''' The percentage of lines in that file covered
* '''lines:''' The number of statements covered
* '''line_hits:''' Line-by-line coverage of the file, where code lines have 0 or more times covered and non-code lines are marked as `'-'` (optional)
Ex:
{{{
#!xml
}}}
== Lint Reports ==
Lint issues are placed inside `` tags, with allowed attributes of:
* '''file:''' The name of the file relative to the base path in the build configuration
* '''tag:''' Class, method or other useful identifiable location inside the file
* '''line:''' Line number
* '''cateory:''' Category for problem; "convention|warning|refactor|error"
Example:
{{{
#!xml
Missing docstring
}}}
== See also ==
* [wiki:CommonXslts Common XSLTs]