HiveBrain v1.2.0
Get Started
← Back to all entries
debugtypescriptModerate

Cannot find name 'describe'. Do you need to install type definitions for a test runner?

Submitted by: @import:stackoverflow-api··
0
Viewed 0 times
runnerdefinitionsyouinstalldescribefindcannottypetestname

Problem

When using TypeScript in conjunction with Jest, my specs would fail with error messages like:
test/unit/some.spec.ts:1:1 - error TS2582: Cannot find name 'describe'. Do you need to install type definitions for a test runner? Try npm i @types/jest or npm i @types/mocha.
test/unit/some.spec.ts:2:3 - error TS2582: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try
npm i @types/jest or npm i @types/mocha.
test/unit/some.spec.ts:3:7 - error TS2304: Cannot find name 'expect'.
test/unit/some.spec.ts:7:1 - error TS2582: Cannot find name 'test'. Do you need to install type definitions for a test runner? Try
npm i @types/jest or npm i @types/mocha.


The types are already installed.

I use:
"@types/jest": "^23.3.12",
"jest": "^23.6.0",
"ts-jest": "^23.10.5",
"typescript": "^3.1.6"


I run tests using jest --forceExit --coverage --verbose

Solution

After fiddling with the tsconfig.json for a while I finally figured that commenting the "types": [], will work.
Failing configuration (before)
// tsconfig.json
{
"compilerOptions": {
"types": []
}
}

Working configuration
// tsconfig.json
{
"compilerOptions": {
// "types": []
}
}

Context

Stack Overflow Q#54139158, score: 37

Revisions (0)

No revisions yet.