jestjs - Problem i tsconfig.json-filen når du prøver å bruke Jest med Typescript


Feilmeldingen jeg får er:

File 'd:/Project/server/jest.config.ts' is not under 'rootDir' 
'd:/Project/server/src'. 'rootDir' is expected to contain all source files.
The file is in the program because:
Matched by include pattern '**/*' in 'd:/Project/server/tsconfig.json'

Min tsconfig.json-fil er:

{
 "compilerOptions": {
    "target": "es2020",
    "module": "commonjs",

    "rootDir": "./src",
    "outDir": "./dist",
    "esModuleInterop": true,
    "forceConsistentCasingInFileNames": true,
    "strict": true,
    "skipLibCheck": true
  }
}

Min jest.config.ts-fil er:

export default {
    clearMocks: true,
    collectCoverage: true,
    coverageDirectory: "coverage",
    coverageProvider: "v8",
    transform: {
        "^.+\\.(t|j)sx?$": ["@swc/jest"],
    },
};

Jeg prøver å følge direktivene i hver dokumentasjon nøyaktig.

Hva gjør jeg galt her?

Svar #1

For fremtidig referanse, en annen mulig løsning ville være å bare endre

"rootDir": "./src",

til

"rootDir": "./",

i tsconfig.json-filen.

Spesielt hvis du ikke vil flytte alle konfigurasjonsfilene dine inn i src/-mappen.

Svar #2

Du må flytte filen din jest.config.ts inn i src/-katalogen for at det skal fungere. Feilen er selvsigende, vil jeg si.

Relaterte artikler