首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >试图运行jest的jest版本不正确

试图运行jest的jest版本不正确
EN

Stack Overflow用户
提问于 2019-09-11 18:11:56
回答 1查看 1.7K关注 0票数 2

我在我的angular项目中有jest测试。

我有一个package.json文件,指定了我想用来运行测试的jest版本。该文件包括:

代码语言:javascript
复制
"@types/jest": "^24.0.18",
"jest": "^24.9.0",
"jest-preset-angular": "^7.1.1",

jest配置还包括:

代码语言:javascript
复制
"setupFilesAfterEnv": [
  "<rootDir>/setup-jest.ts"
],

这就是问题发生的地方。尝试运行jest时,我收到以下消息:

代码语言:javascript
复制
● Validation Warning:

Unknown option "setupFilesAfterEnv" with value ["<rootDir>/setup-jest.ts"] was found.
This is probably a typing mistake. Fixing it will remove this message.

Configuration Documentation:
https://jestjs.io/docs/configuration.html

我查看了一下jest -h,发现了一个标记,它为我提供了jest环境的设置。

代码语言:javascript
复制
jest --showConfig

但是,这表明我在版本上运行jest

代码语言:javascript
复制
"version": "23.6.0"

所以我的问题就在这里。为什么在我做了npm i之后,尝试运行测试的jest版本是不同的/旧的。

我尝试使用-g标志和save-dev标志安装jest-cli。

我也尝试在VS代码中运行测试,如果这有任何帮助的话。

请帮帮忙。

提前谢谢你。

npx jest --showConfig的完整日志

代码语言:javascript
复制
● Validation Warning:

  Unknown option "setupFilesAfterEnv" with value ["<rootDir>/setup-jest.ts"] was found.
  This is probably a typing mistake. Fixing it will remove this message.

  Configuration Documentation:
  https://jestjs.io/docs/configuration.html

{
  "configs": [
    {
      "automock": false,
      "browser": false,
      "cache": true,
      "cacheDirectory": "/var/folders/bs/wrvrgl6132df8l5ndxv40m3m0000gn/T/jest_dx",
      "clearMocks": false,
      "coveragePathIgnorePatterns": [
        "/node_modules/",
        "setup-jest.ts"
      ],
      "detectLeaks": false,
      "detectOpenHandles": false,
      "errorOnDeprecated": false,
      "filter": null,
      "forceCoverageMatch": [],
      "globals": {
        "ts-jest": {
          "tsConfig": "<rootDir>/tsconfig.spec.json",
          "stringifyContentPathRegex": "\\.html$",
          "astTransformers": [
            "jest-preset-angular/InlineHtmlStripStylesTransformer"
          ]
        }
      },
      "haste": {
        "providesModuleNodeModules": []
      },
      "moduleDirectories": [
        "node_modules"
      ],
      "moduleFileExtensions": [
        "ts",
        "html",
        "js",
        "json"
      ],
      "moduleNameMapper": [
        [
          "@app/(.*)",
          "/Users/name/Projects/project/src/app/$1"
        ],
        ...
      ],
      "modulePathIgnorePatterns": [],
      "name": "6caa4...",
      "prettierPath": "/Users/name/Projects/project/node_modules/prettier/index.js",
      "resetMocks": false,
      "resetModules": false,
      "resolver": null,
      "restoreMocks": false,
      "rootDir": "/Users/name/Projects/project",
      "roots": [
        "/Users/name/Projects/project"
      ],
      "runner": "jest-runner",
      "setupFiles": [],
      "setupTestFrameworkScriptFile": null,
      "skipFilter": false,
      "snapshotSerializers": [],
      "testEnvironment": "/Users/name/Projects/project/node_modules/jest-environment-jsdom-thirteen/build/index.js",
      "testEnvironmentOptions": {},
      "testLocationInResults": false,
      "testMatch": [
        "**/__tests__/**/*.js?(x)",
        "**/?(*.)+(spec|test).js?(x)"
      ],
      "testRegex": "",
      "testRunner": "/Users/name/node_modules/jest-jasmine2/build/index.js",
      "testURL": "http://localhost",
      "timers": "real",
      "transform": [
        [
          "^.+\\.(ts|js|html)$",
          "/Users/name/Projects/project/node_modules/ts-jest/dist/index.js"
        ]
      ],
      "watchPathIgnorePatterns": []
    }
  ],
  "globalConfig": {
    "bail": false,
    "changedFilesWithAncestor": false,
    "collectCoverage": true,
    "collectCoverageFrom": null,
    "coverageDirectory": "/Users/name/Projects/project/coverage",
    "coverageReporters": [
      "json",
      "text",
      "lcov",
      "clover"
    ],
    "coverageThreshold": null,
    "detectLeaks": false,
    "detectOpenHandles": false,
    "errorOnDeprecated": false,
    "expand": false,
    "filter": null,
    "globalSetup": null,
    "globalTeardown": null,
    "listTests": false,
    "maxWorkers": 7,
    "noStackTrace": false,
    "nonFlagArgs": [],
    "notify": false,
    "notifyMode": "always",
    "passWithNoTests": false,
    "projects": null,
    "rootDir": "/Users/name/Projects/project",
    "runTestsByPath": false,
    "skipFilter": false,
    "testFailureExitCode": 1,
    "testPathPattern": "",
    "testResultsProcessor": null,
    "updateSnapshot": "new",
    "useStderr": false,
    "verbose": null,
    "watch": false,
    "watchman": true
  },
  "version": "23.6.0"
}

在这里也显示npm config get日志:

代码语言:javascript
复制
; cli configs
metrics-registry = "http://.../.../npm-group/"
scope = ""
user-agent = "npm/6.9.0 node/v10.15.3 darwin x64"

; project config /Users/user/Projects/project/.npmrc
registry = "http://.../.../npm-group/"

; node bin location = /Users/user/.nvm/versions/node/v10.15.3/bin/node
; cwd = /Users/user/Projects/project
; HOME = /Users/user
; "npm config ls -l" to show all defaults. 
EN

回答 1

Stack Overflow用户

发布于 2021-09-14 09:32:35

我也遇到了同样的问题,经过长时间的搜索,我尝试了一下:

代码语言:javascript
复制
type jest

这给了我位置:

代码语言:javascript
复制
/usr/local/bin/jest

重命名(或删除)此文件,解决了问题(请注意,现在运行jest将显示command not found)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57886882

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档