Javascript 没有发现任何测试
在macOS上运行docker mhart/alpine节点:8 节点(6.10.3-r0)(18/18) 纱线0.24.6 笑话20.0.4 但是,在运行代码时,我有一个_tests _/index.test.js文件Javascript 没有发现任何测试,javascript,node.js,unit-testing,jestjs,Javascript,Node.js,Unit Testing,Jestjs,在macOS上运行docker mhart/alpine节点:8 节点(6.10.3-r0)(18/18) 纱线0.24.6 笑话20.0.4 但是,在运行代码时,我有一个_tests _/index.test.js文件 node\u modules/.bin/jest--watchAll我得到以下输出 未找到任何测试 在/usr/src/app中 已检查5个文件。 testMatch:/\uuu测试/*.js?(x),***/?(*)(规范测试).js?(x)-1匹配 testPathIgno
node\u modules/.bin/jest--watchAll
我得到以下输出
未找到任何测试在/usr/src/app中
已检查5个文件。
testMatch:/\uuu测试/*.js?(x),***/?(*)(规范测试).js?(x)-1匹配
testPathIgnorePatterns:/node_modules/,/src,src-0匹配项
模式:“”-0个匹配项
我已多次重新安装程序包编号,但都没有效果。您的输出显示
testMatch
有1个匹配项
,这可能是您的\uuu测试/index.test.js
文件。您的testPathIgnorePatterns
似乎导致该测试套件被忽略在/usr/src/app
中未找到任何测试表明Jest正在/usr/src/app
中查找测试,testPathIgnorePatterns:/node\u modules/,/src,src
表示Jest忽略/src
目录中的文件
如果
\uu tests\uu/index.test.js文件位于/src目录之外,请查看该文件的位置,或者停止testPathIgnorePatterns
忽略/src目录。如果要在tests文件夹中运行所有测试,只需执行以下操作
jest\uuu tests\uuuu--watch
我在尝试在项目的子模块中运行测试时出现此错误。通过在独立于主项目的单独文件夹树中单独测试子模块,修复了此问题。您可以尝试在没有任何参数的情况下运行jest
。需要注意的一点是,如果您有如下文件结构,测试文件名必须遵循约定*.test.js
或*.spec.js
myFolder
│ myFile1.js
│ myFile2.js
│ ...
│
└───__tests__
myFile1.spec.js
myFile2.spec.js
...
"testMatch": [
"<rootDir>/src/**/*.(test).{js,jsx,ts,tsx}",
"<rootDir>/src/**/?(*.)(spec|test).{js,jsx,ts,tsx}"
],
然后,您需要在jest.config.js
中为testMatch
属性设置以下模式:
testMatch: ['**/__tests__/*.js?(x)'],
jest.config.js
的简单示例:
const jestConfig = {
verbose: true,
testURL: "http://localhost/",
'transform': {
'^.+\\.jsx?$': 'babel-jest',
},
testMatch: ['**/__tests__/*.js?(x)'],
}
module.exports = jestConfig
在package.json中有一个用于查找测试文件的模式。在此模式中,您可以根据文件位置对其进行更改,也可以将其设置为全局模式
我编写了一个测试,不在特定文件夹中,并遵循命名约定*.test.js
和更改testMatch
"testMatch": [
"<rootDir>/src/**/*.(test).{js,jsx,ts,tsx}",
"<rootDir>/src/**/?(*.)(spec|test).{js,jsx,ts,tsx}"
],
“testMatch”:[
“/src/***.(test)。{js,jsx,ts,tsx}”,
“/src/**/?(*)(规范测试)。{js,jsx,ts,tsx}”
],
如果您使用的是Typescript,则在我将Typescript从3.3更新到3.8.3后,我开始得到相同的未找到测试
错误。将jest和ts jest从版本23.*更新到版本25.*为我修复了它。我修复它的方法是稍微更改docker compose命令。我更改了命令:npm run cover&&bash有没有办法只使用.js
扩展而不是test.js
或spec.js
?