===========
xunitparser
Description
xunitparser reads a JUnit/XUnit XML file and maps it to Python objects.
It tries to use the objects available in the standard unittest
module.
Usage
::
import xunitparser
ts, tr = xunitparser.parse(open('/path/to/unit.xml'))
ts
is a TestSuite
class, containing TestCase
classes.
tr
is a TestResult
class.
You can change the classes used (though they probably would not work unless
they inherit from the xunitparser
ones) by using your own
xunitparser.Parser
class and changing the *_CLASS
variables.
Some helpful properties are added to the TestCase
class::
for tc in ts:
print('Class %s, method %s' % (tc.classname, tc.methodname))
if tc.good:
print('went well...', 'but did not run.' if tc.skip else '')
else:
print('went wrong.')
For more, please read the source code - it is very minimal.
The classes also inherit from the unittest
__ module so it is actually
a good reference of what you can do with xunitparser
.
__ http://docs.python.org/library/unittest.html
Changes
-
1.3.4
- fix python 3 compatibility
- main project URL change as maintainer changes
-
1.3.0
- Multiple results in a single TestCase are seen as one.
The previous way was never validated by real-life examples.
- Handle system-out / system-err at the testsuite level
Development
Contributions can be sent to https://gitlab.com/woob/xunitparser/