reactjs - Jest : test suite failed to run Error: No message was provided

标签 reactjs typescript jestjs

我正在将现有测试转换为将 typescript 与 ts-jest 一起使用,我找到了所有文件,但所有测试都因错误而失败

 FAIL  src/components/Buttons/__tests__/index.tsx
  ● Test suite failed to run

    Error: No message was provided

我不知道发生了什么,我似乎也无法通过谷歌搜索找到任何遇到同样问题的人,这很可怕......

带有 jest 配置的 package.json

  "jest": {
    "globals": {
      "ts-jest": {
        "tsConfigFile": "<rootDir>/tsconfig.json",
        "babelConfig": {
          "presets": ["@babel/preset-env", "@babel/preset-react"]
        }
      }
    },
    "setupTestFrameworkScriptFile": "<rootDir>/src/setupTests.ts",
    "verbose": true,
    "transform": {
      "^.+\\.tsx?$": "ts-jest"
    },
    "testRegex": "(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$",
    "moduleNameMapper": {
      "\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "<rootDir>/__mocks__/fileMock.js",
      "typeface-roboto|\\.(css|less)$": "<rootDir>/__mocks__/styleMock.js"
    },
    "moduleFileExtensions": [
      "ts", "tsx", "js", "jsx", "json", "node"
    ]
  },

示例测试文件...

import React from 'react';

import { shallow } from 'enzyme';

import Account from '../account';

it('renders without crashing', () => {
  expect(shallow(<Account />)).toBe(1);
});

最佳答案

我发现在我的项目目录中添加一个 tsconfig.json 文件可以解决这个问题。

我的 tsconfig.json 文件不需要任何特殊的东西,事实上它根本不需要任何东西!只要有一个空白的 tsconfig.json 文件就可以运行我的测试。

关于reactjs - Jest : test suite failed to run Error: No message was provided,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51225271/

相关文章:

reactjs - 在 useEffect() 内部使用 useDispatch() 时,操作似乎不会立即调用

javascript - 如何在 MERN 堆栈中定义架构和快速路由器?

javascript - 我如何在react js中访问nextjs中_app.js文件中的上下文

angular - Tslint 无法在使用 Angular 的 Emacs 中工作

typescript - 无法生成 Jest 覆盖率报告

javascript - 如何在 React 中更改 OrbitControl 目标?

javascript - 如何按特定顺序动态加载多个脚本?

angular - typescript 中的文件系统

javascript - jest.mock 不适用于 Javascript 测试和 Typescript 模块

javascript - 在 Jest 中等待 Observer 完成