module.exports = { preset: 'ts-jest', moduleFileExtensions: ['js', 'json', 'ts'], roots: ['/src', '/test'], testRegex: '.*\\.(spec|e2e-spec|integration-spec|perf-spec)\\.ts$', transform: { '^.+\\.(t|j)s$': 'ts-jest', }, collectCoverageFrom: [ '**/*.(t|j)s', ], coverageDirectory: '../coverage', testEnvironment: 'node', moduleNameMapper: { '^src/(.*)$': '/src/$1', }, // 添加异步处理配置 testTimeout: 10000, // 强制退出以避免挂起 forceExit: true, // 检测打开的句柄 detectOpenHandles: true, // 处理 ES 模块 transformIgnorePatterns: [ 'node_modules/(?!(@faker-js/faker)/)', ], // 设置测试环境变量 setupFilesAfterEnv: ['/test-setup.js'], };