Test Results
Surface test results directly in your PRs. Dev Herald reads your test runner’s JSON output and formats it into a clean, readable comment — pass counts, failure details, and suite breakdowns all in one place.
Usage
- name: Post Test Results
if: always()
uses: dev-herald/comment@v1
with:
api-key: ${{ secrets.DEV_HERALD_KEY }}
pr-number: ${{ github.event.pull_request.number }}
sticky-id: test-results
signal: 'TEST_RESULTS'
test-results: |
- name: Unit Tests
path: vitest-results/results.jsonOptions
| Option | Required | Description |
|---|---|---|
signal | ✅ | Must be TEST_RESULTS |
test-results | ✅ | YAML list of test suites — each entry needs a name and path to the JSON output file |
sticky-id | Recommended | Reuses the same comment on every push instead of creating a new one |
Multiple Suites
Pass multiple suites under the same step — they’ll be combined into a single PR comment:
signal: 'TEST_RESULTS'
test-results: |
- name: Unit Tests
path: vitest-results/results.json
- name: E2E Tests
path: playwright-results/results.jsonSupported Test Runners
| Runner | Output format |
|---|---|
| Vitest | JSON (reporters: ['json']) |
| Playwright | JSON (reporter: [['json', { outputFile: '...' }]]) |
Next Steps
- See the Vitest guide for a full setup walkthrough
- See the Playwright guide for E2E test reporting
- Learn about Sticky Comments to keep your PR clean
Last updated on