Test Scripts Verbosity Guide
July 4, 2026 · View on GitHub
This document explains the different verbosity levels available for running tests in the Uptime Watcher project.
Overview
We've created multiple variants of each test script to provide different levels of output verbosity. This allows you to choose the appropriate level of detail for your needs without modifying the Vite configuration files.
Default Test Scripts (Baseline Verbosity)
npm run test- Run frontend tests with standard verbositynpm run test:electron- Run Electron tests with standard verbositynpm run test:shared- Run shared component tests with standard verbositynpm run test:all- Run all tests with standard verbosity
Verbosity Levels
1. Quiet (Minimal Console Output)
Uses --silent flag to suppress most output except results.
npm run test:quietnpm run test:electron:quietnpm run test:shared:quietnpm run test:all:quiet
Best for: CI/CD pipelines, quick checks when you only care about pass/fail
2. Minimal (Dot Progress)
Uses --reporter=dot to show progress as dots (one dot per test).
npm run test:minimalnpm run test:electron:minimalnpm run test:shared:minimalnpm run test:all:minimal
Best for: Local development when you want minimal visual feedback
3. Default (Standard Output)
Uses --reporter=default for balanced output showing file names and basic results.
npm run test(baseline)npm run test:electron(baseline)npm run test:shared(baseline)npm run test:all(baseline)
Best for: General development work, debugging test failures
4. Verbose (Detailed Test Tree)
Uses --reporter=verbose to show full test hierarchy and individual test names.
npm run test:verbosenpm run test:electron:verbosenpm run test:shared:verbosenpm run test:all:verbose
Best for: Understanding test structure, detailed debugging
5. Detailed (Maximum Information)
Uses --reporter=verbose --no-truncate for complete output with no truncation.
npm run test:detailednpm run test:electron:detailednpm run test:shared:detailednpm run test:all:detailed
Best for: Deep debugging, full error analysis
Coverage Tests
Coverage tests also support verbosity levels (renderer suite by default):
npm run test:coverage(renderer coverage; use alongside electron/shared coverage for full picture)npm run test:coverage:quiet(renderer, quiet)npm run test:coverage:minimal(renderer, dot reporter)npm run test:coverage:verbose(renderer, verbose reporter)npm run test:coverage:detailed(renderer, verbose + no truncation)
For full coverage, pair renderer coverage with npm run test:electron:coverage
and npm run test:shared:coverage; merge reports if you need a combined view.
Example Output Comparison
Minimal (test:minimal)
········································································
Test Files 3 passed (3)
Tests 72 passed (72)
Default (test)
✓ src/test/main.comprehensive.test.tsx (25 tests) 1616ms
✓ shared/test/validation/schemas.test.ts (38 tests) 2ms
✓ electron/test/services/ServiceContainer.core-services.test.ts (9 tests) 2ms
Test Files 3 passed (3)
Tests 72 passed (72)
Verbose (test:verbose)
Shows complete test hierarchy with all individual test names and timings.
Recommendations
- Development: Use
npm run testornpm run test:minimalfor quick feedback - Debugging: Use
npm run test:verboseto see which specific tests are failing - CI/CD: Use
npm run test:quietfor cleaner build logs - Deep Debugging: Use
npm run test:detailedwhen you need maximum information
Configuration Note
These scripts only change the output verbosity through command-line flags. The underlying Vite configuration files remain unchanged, preserving all your existing test settings, coverage thresholds, and other configurations.