Silly small, silly easy junit output formatter for tap.
npm install tap-junit!GitHub Actions Workflow Status


Silly small, silly easy junit output formatter for tap.
Works with tape and other tap based tests just pipe it into tap-junit
- -c, --classname - The name you want to apply to the testsuite element (if not set no name is given to the output testsuite)
- -o, --output - designate where you want the .xml results to output
- If you do not specify an output then results will be displayed within the terminal
- -n, --name - value provided will be the name of the output.xml file, otherwise defaults to tap.xml
- -s, --suite - sets the main test suite name defaults to Tap-Junit if not passed
- -v, --version - displays the current tap-junit version
- -i, --input - Specify a specific tap txt input file to transform
- -p, --pretty - Specify if you want the output xml to be prettified or not this is false by default
```
npm i -D tap-junit
`
tape test/*.js | tap-junit --output output/test
node test.js | ./node_modules/tap-junit/bin/tap-junit --output output/test
tap-junit -o output/tests -n nontape < src/test/non-tape.tap
tape tests/thing.js | tap-junit > output/thing.xml
tap-junit -i tap.txt -s suite-name
`
You can now use custom extensions (in version 3.1.0+) simply add the extension to the end of your file name. If none is provided tap-junit will still default to .xml
tape test/*.js | tap-junit -o output/tests -n tape.xuni
The above will create a file called tape.xuni in the output/tests directory with the results inside.
Tap-Junit currently follows this spec on junit syntax/layout
`xml``
So Tap Junit takes a [tape]() style assumption when it comes to comments. That being, when a comment appears before a test (because that's how tape labels its tap output) it will be registered as a comment for that test, but the issue here is that you may lose placed comments in your tap files.
At the moment, I'm still trying to figure out a decent way to handle comments and record them. Keep this in mind that only a single comment before each test will currently be recorded for a system-out tag.
If you have ideas on how to better handle this, don't hesitate to reach out!