Test Results
Mint supports test results as a semantic output. When a task outputs test results, the Mint UI will display richly formatted test failures. This provides a much nicer developer experience, compared to needing to read log output. In the future, Mint will provide more functionality for tasks that produce test results.
Example
Here's an example task. Rather than actually running tests, we're downloading a test framework fixture file from captain. In real usage, you'd configure your test framework to write the test results to a file.
tasks:
- key: run-tests
run: curl -sO 'https://raw.githubusercontent.com/rwx-research/captain/6c83b74c5ebbf115ec14cca65083d7f4ddea285b/test/fixtures/jest.json'
outputs:
test-results:
- path: jest.json
Note that test-results
accepts an array, so if your task is producing more than one test results file, you can specify all of them in the test results outputs.
Language and Framework
Mint uses captain to parse test results.
Therefore, it supports all of the languages and frameworks that Captain supports.
See the Captain docs for the full list.
Captain will normally infer which parser to use, but you may need to specify the language and framework.
The Captain docs for your respective framework will indicate if specifying is necessary, and if it is, you'll want to set those attributes under an options
key along with your test results file.
tasks:
- key: run-tests
run: curl -sO 'https://raw.githubusercontent.com/rwx-research/captain/6c83b74c5ebbf115ec14cca65083d7f4ddea285b/test/fixtures/jest.json'
outputs:
test-results:
- path: jest.json
options:
language: JavaScript
framework: Jest