Everr
Test Analytics

Vitest

Set up test analytics for Vitest projects.

Everr automatically parses Vitest output to track test results, detect flaky tests, and analyze failures.

Supported reporters

The verbose reporter prints every individual test result, giving Everr full per-test visibility:

vitest run --reporter=verbose

Or configure it in your vitest.config.ts:

export default defineConfig({
  test: {
    reporters: ["verbose"],
  },
});

Default reporter

The default reporter (no extra configuration needed) is also supported. Everr parses:

  • File-level summaries for every test file (pass/fail status and duration)
  • Individual slow tests that Vitest prints below each file summary

Since the default reporter only shows individual results for slow tests, the verbose reporter gives more granular per-test tracking.

GitHub Actions workflow example

- name: Run tests
  run: npx vitest run --reporter=verbose

Everr automatically detects and parses Vitest output from workflow logs.

What gets parsed

Verbose reporter patterns

PatternMeaning
✓ filepath > describe > test 42msTest passed
× filepath > describe > test 15msTest failed
↓ filepath > describe > testTest skipped

Default reporter patterns

PatternMeaning
✓ project filepath (N tests) 42msFile passed
× project filepath (N tests | M failed) 42msFile failed
✓ test name 42msSlow test passed (child of file above)
× test name 15msSlow test failed (child of file above)

Describe block hierarchy

Vitest verbose output uses the > separator to represent the test hierarchy: file path, describe blocks, and test name. For example:

✓ src/utils.test.ts > parseConfig > handles empty input 3ms

This is parsed as:

  • Package: src/utils.test.ts
  • Describe block: parseConfig
  • Test name: handles empty input

Nested describe blocks are automatically detected. Describe nodes get everr.test.is_suite=true, nested entries get everr.test.is_subtest=true, and everr.test.parent_test points to the parent node. A nested describe block can therefore be both a suite and a subtest.

Generated span attributes

AttributeValue
everr.test.nameFull test name (e.g. parseConfig > handles empty input)
everr.test.resultpass, fail, or skip
everr.test.duration_secondsDuration from the test output
everr.test.frameworkvitest
everr.test.packageFile path (e.g. src/utils.test.ts)
everr.test.is_suitetrue for describe blocks or file summaries that contain child tests
everr.test.is_subtesttrue for tests within describe blocks or file summaries
everr.test.parent_testParent describe block or file name