fix: resolve test hanging issue in CI
- Reduce CI reporters to prevent resource contention (removed json/html) - Optimize coverage settings with all:false and skipFull:true - Fix MSW waitForRequest memory leak by adding timeout and cleanup - Add teardownTimeout to vitest config - Add 10-minute timeout to GitHub Actions job - Create emergency test script without coverage for debugging The main issues were: 1. Coverage collection with multiple reporters causing exhaustion 2. MSW event listener that could hang indefinitely 3. Too many simultaneous reporters (4 at once) 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -21,17 +21,15 @@ export default defineConfig({
|
||||
},
|
||||
// Retry configuration
|
||||
retry: parseInt(process.env.TEST_RETRY_ATTEMPTS || '2', 10),
|
||||
// Test reporter
|
||||
reporters: process.env.CI ? ['default', 'json', 'junit', 'html'] : ['default'],
|
||||
// Test reporter - reduce reporters in CI to prevent hanging
|
||||
reporters: process.env.CI ? ['default', 'junit'] : ['default'],
|
||||
outputFile: {
|
||||
json: './test-results/results.json',
|
||||
junit: './test-results/junit.xml',
|
||||
html: './test-results/html/index.html'
|
||||
junit: './test-results/junit.xml'
|
||||
},
|
||||
coverage: {
|
||||
provider: 'v8',
|
||||
enabled: process.env.FEATURE_TEST_COVERAGE !== 'false',
|
||||
reporter: (process.env.COVERAGE_REPORTER || 'lcov,html,text-summary').split(','),
|
||||
reporter: process.env.CI ? ['lcov', 'text-summary'] : (process.env.COVERAGE_REPORTER || 'lcov,html,text-summary').split(','),
|
||||
reportsDirectory: process.env.COVERAGE_DIR || './coverage',
|
||||
exclude: [
|
||||
'node_modules/',
|
||||
@@ -50,10 +48,16 @@ export default defineConfig({
|
||||
functions: 80,
|
||||
branches: 75,
|
||||
statements: 80
|
||||
}
|
||||
},
|
||||
// Add coverage-specific settings to prevent hanging
|
||||
all: false, // Don't collect coverage for untested files
|
||||
skipFull: true // Skip files with 100% coverage
|
||||
},
|
||||
// Test isolation
|
||||
isolate: true
|
||||
isolate: true,
|
||||
// Force exit after tests complete in CI to prevent hanging
|
||||
forceRerunTriggers: ['**/tests/**/*.ts'],
|
||||
teardownTimeout: 1000
|
||||
},
|
||||
resolve: {
|
||||
alias: {
|
||||
|
||||
Reference in New Issue
Block a user