我正在将现有测试转换为使用ts-jest的typescript,并且我找到了所有文件,但所有测试均因错误而失败
FAIL src/components/Buttons/__tests__/index.tsx
● Test suite failed to run
Error: No message was provided
我不知道发生了什么,我似乎也找不到通过谷歌搜索遇到相同问题的人,这真是可怕的事...
带有配置配置的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);
});
答案 0 :(得分:1)
我发现在我的项目目录中添加 tsconfig.json 文件可以解决此问题。
我的tsconfig.json文件不需要任何特殊的东西,实际上它根本不需要任何东西!仅仅拥有一个空白的tsconfig.json文件就可以运行我的测试。
答案 1 :(得分:0)
3个测试服出现类似错误,其中1个运行良好。这些在代码合并之前运行。经过调查,我发现我的组件具有AAD身份验证,并且缺少相同的配置,因此我将其删除以进行签入。添加正确的配置后,解决了我的问题。
答案 2 :(得分:-1)
由于某种原因,在设置中包含我的tsconfig导致了问题。我把它放在那里,即使它是标准名称和位置(项目根目录中的tsconfig.js)
删除此错误后,我的配置中有更多错误需要清除,但它超过了我的问题中的错误