- Convert your XML/TRX test report files to Mochawesome for easy viewing and troubleshooting.
- Convert test report files to JUnit format.
- JUnit/xUnit XML Format
- NUnit 3.0+ XML Format
- xUnit.net v2+ XML Format
- Visual Studio TRX Format
Mochawesome is a custom test reporter originally designed for Mocha Javascript testing framework.
It features a clean modern interface allowing users to easily view and navigate test runs.
https://github.com/adamgruber/mochawesome
- Simple, clean, and modern design
- Per suite charts (via ChartJS)
- Stack trace for failed tests
- Support for displaying context information
- Filters to display only the tests you want
- Responsive and mobile-friendly
- Offline viewing
- Support for test and suite nesting
- Displays before and after hooks
- Review test code inline
- All test reports except JUnit are first converted to JUnit format using XSLT.
- TRX files undergo additional processing to enhance JUnit output.
- Set
junit
option totrue
to get JUnit conversion results.
- Converts <skipped> test messages to Mochawesome test context values.
- Converts <properties>, <system-out> and <system-err> to Mochawesome context values.
- Converts <failure> and <error> elements to Mochawesome error stack.
- Tests suites without any tests are excluded from Mochawesome and JUnit.
- Attachments are not supported.
- Converts <properties>, <system-out> and <system-err> elements to Mochawesome test context.
- Nested test suites currently not supported.
- NUnit XML version 3 and higher is supported.
- Converts <properties> elements to JUnit <properties>.
- Converts <output> elements to JUnit <system-out>.
- Nested
test-suite
elements are flattened.
- xUnit.net v2+ XML is supported.
- Converts <traits> elements to to JUnit <properties>.
- Converts
test
<reason> elements to JUnit <skipped>. - Supports single <assembly> per file, if multiple assemblies are present only first will be converted.
- Converts
Output/ErrorInfo/Message
to JUnit <failure> message. - Converts
Output/ErrorInfo/StackTrace
to JUnit <failure> stack trace. - Converts
Output/StdErr
to JUnit <system-err>. - Converts
Output/StdOut
to JUnit <system-out>. - Converts Inconclusive and NotExecuted tests to <skipped> with message.
- Test suites are split into multiple <testsuite> elements by test classname.
- Tests are ordered by name.
- Test suit times are not 100% accurate - displayed as a sum() of all test times.
npm i mochawesome-converter
const convert = require('mochawesome-converter');
let options = {
testFile: 'mytesfiles/nunit.xml',
testType: 'nunit',
junit: true
}
convert(options).then(() => console.log(`Report created: ${options.reportDir}/${options.reportFilename}`));
Option | Type | Default | Description |
---|---|---|---|
testFile (required) |
string | Path to test file for conversion | |
testType (required) |
string | Test report type | |
reportDir |
string | ./report | Converted report output path |
reportFilename |
string | mochawesome.json | Mochawesome report name |
junit |
boolean | false | Create JUnit report? |
junitReportFilename |
string | testFile.name -junit.xml |
JUnit report file name |
html |
boolean | false | Create Mochawesome HTML? |
htmlReportFilename |
string | mochawesome.html | Mochawesome HTML file name |
skippedAsPending |
boolean | true | Show skipped tests as pending in Mochawesome |
switchClassnameAndName |
boolean | false | Switch test case classname and name |
testFile
- relative or absolute path to input test file.testType
- type of test report, not case-sensitive.reportDir
- will be created if path does not exist.skippedAsPending
- Mocha always reports skipped tests as pending and this is default behaviour of converter. Set tofalse
to display tests as skipped.switchClassnameAndName
- Switches classname and name attributes of testcase in case your test naming data is generated in reverse order.
testType |
File Type |
---|---|
JUnit | JUnit/xUnit |
NUnit | NUnit 3.0+ XML |
xUnit | xUnit.net v2+ XML |
TRX | Visual Studio TRX |