从 WebStorm Jest Testrunner 开始 Jest 单元测试不起作用
Jest Unit Tests do not work started with WebStorm Jest Testrunner
我正在使用 WebStorm 2019.2、Angular 8 和最新的 nrwl monorepo。当用 ng test <app-name>
开始 Angular 测试时一切正常。如果我尝试从 WebStorm 中进行 运行 测试(通过单击编辑器中的绿色三角形),我会收到以下错误:
Error: Failed: "Zone is needed for the async() test helper but could not be found.
Please make sure that your environment includes zone.js/dist/zone.js"
我尝试了几个小时的谷歌搜索以找到该问题的解决方案,但没有成功。知道如何解决这个问题吗?
PS:monorepo 还托管了一个 NestJS 服务器。 运行 WebStorm 中的单一测试适用于 NestJS 应用程序。
请尝试 https://github.com/nrwl/nx/pull/1467#issuecomment-506973401 中的解决方法:
- 将以下笑话配置添加到 package.json 并在必要时进行调整:
"jest": {
"preset": "jest-preset-angular",
"setupFilesAfterEnv": [
"<rootDir>/apps/nx-jest-example/src/test-setup.ts"
],
"testPathIgnorePatterns": [
"<rootDir>/node_modules/",
"<rootDir>/dist/",
"<rootDir>/src/test.ts",
"<rootDir>/apps/nx-jest-example-e2e/"
],
"globals": {
"ts-jest": {
"diagnostics": false,
"tsConfig": "<rootDir>/apps/nx-jest-example/tsconfig.spec.json",
"stringifyContentPathRegex": "\.html$",
"astTransformers": [
"<rootDir>/node_modules/jest-preset-angular/InlineHtmlStripStylesTransformer"
]
}
}
}
- 更改 编辑配置 中的配置以使用 package.json 而不是 jest.config
我正在使用 WebStorm 2019.2、Angular 8 和最新的 nrwl monorepo。当用 ng test <app-name>
开始 Angular 测试时一切正常。如果我尝试从 WebStorm 中进行 运行 测试(通过单击编辑器中的绿色三角形),我会收到以下错误:
Error: Failed: "Zone is needed for the async() test helper but could not be found.
Please make sure that your environment includes zone.js/dist/zone.js"
我尝试了几个小时的谷歌搜索以找到该问题的解决方案,但没有成功。知道如何解决这个问题吗?
PS:monorepo 还托管了一个 NestJS 服务器。 运行 WebStorm 中的单一测试适用于 NestJS 应用程序。
请尝试 https://github.com/nrwl/nx/pull/1467#issuecomment-506973401 中的解决方法:
- 将以下笑话配置添加到 package.json 并在必要时进行调整:
"jest": {
"preset": "jest-preset-angular",
"setupFilesAfterEnv": [
"<rootDir>/apps/nx-jest-example/src/test-setup.ts"
],
"testPathIgnorePatterns": [
"<rootDir>/node_modules/",
"<rootDir>/dist/",
"<rootDir>/src/test.ts",
"<rootDir>/apps/nx-jest-example-e2e/"
],
"globals": {
"ts-jest": {
"diagnostics": false,
"tsConfig": "<rootDir>/apps/nx-jest-example/tsconfig.spec.json",
"stringifyContentPathRegex": "\.html$",
"astTransformers": [
"<rootDir>/node_modules/jest-preset-angular/InlineHtmlStripStylesTransformer"
]
}
}
}
- 更改 编辑配置 中的配置以使用 package.json 而不是 jest.config