玩笑错误 TypeError: (0 , _jest.test) is not a function

Rad*_*dex 5 javascript reactjs jestjs

我收到错误:

TypeError: (0 , _jest.test) 不是函数

当尝试使用npm test.

我认为这可能与配置有关。我该如何解决这个问题?

文件sum.js

function sum (a, b) {
  return a + b
}

export default sum
Run Code Online (Sandbox Code Playgroud)

文件测试/sum.test.js

import sum from '../src/sum.js'
import { test, expect } from 'jest'

test('adds 1 + 2 to equal 3', () => {
  expect(sum(1, 2)).toBe(3)
})
Run Code Online (Sandbox Code Playgroud)

文件package.json

"devDependencies": {
    "babel-eslint": "7.1.1",
    "eslint": "3.18.0",
    "eslint-plugin-react": "6.10.0",
    "standard": "9.0.2",
    "webpack": "2.2.1",
    "jest": "21.0.1",
    "jest-cli": "21.0.1",
    "babel-jest": "21.0.0",
    "regenerator-runtime": "0.11.0"
},
Run Code Online (Sandbox Code Playgroud)

"scripts": {
    "test": "standard && jest",
    "format": "standard --fix",
    "start": "webpack-dev-server --config webpack.config.dev.js",
    "build": "webpack --config webpack.config.prod.js"
},
Run Code Online (Sandbox Code Playgroud)

quo*_*Bro 7

删除这一行:

import { test, expect } from 'jest'
Run Code Online (Sandbox Code Playgroud)

你不需要从 Jest 导入任何东西。参见示例

  • @JessB 这听起来像是一个坏笑话。`jest` 提供了一个全局可用的 `test`,这很好。它似乎还“导出”了一些已损坏的“测试”,但必须导入,以便 linter 或流工作。 (2认同)