我正试图在我的项目上运行Jest。我在Windows 10上。我在一个测试文件中只有一个测试。
在package.json
中:
"test": "jest"
我的目录结构:
src/
app/
routeName/
redux/
action.tests.js
我的输出:
No tests found, exiting with code 1
Run with `--passWithNoTests` to exit with code 0
In C:\Users\myUsername\Documents\myApp
47 files checked.
testMatch: **/__tests__/**/*.[jt]s?(x), **/?(*.)+(spec|test).[tj]s?(x) - 0 matches
testPathIgnorePatterns: \\node_modules\\ - 47 matches
testRegex: - 0 matches
Pattern: - 0 matches
npm ERR! Test failed. See above for more details.
根据这里的文档,Jest应该查找名称中包含test.js
的任何内容。
我也试过tests.js
,也不管用。
我在项目的根目录下创建了一个文件夹,并在其中放置了一个测试__tests__/tests.js
,这确实有效,但我不希望将其放置在那里。
我看过一些表面上类似的罚单和问题,但所有这些都涉及到更复杂的配置,或者应该已经修补过的bug。我没有特殊的配置集。文档说这应该可以工作。我读过的Jest教程包括我目前使用的确切设置。
我正在使用Babel和Webpack。我安装了jest
和babel-jest
包。我还在ESLint环境中添加了jest。
[编辑]更新以正确记录我的问题,我在下面回答了这个问题。我失去了我的文件命名的轨道。
8条答案
按热度按时间piztneat1#
我是个大白痴,我没有注意细节。
Jest专门寻找
test.js
。而不是testS.js
。我的文件被标记为tests.js
。它在__tests__/
中工作,因为Jest只是寻找里面的任何东西。我现在让它工作得很好,它将继续作为我不看regex匹配的细节的证明。
1hdlvixo2#
我在React-App上遇到过同样的问题。请确保jest配置文件具有正确的文件模式来查找测试:
yyhrrdl83#
从我的Angular 来看,我之所以会遇到这个错误,是因为我把自己(cd)放在chromeDriver的安装目录中,这样就不必把它的路径添加到$Path中。在我把chromeDriver添加到$Path中,并把自己放在我的项目目录中之后,一切都很好。
xggvc2p64#
我所要做的就是
npm install
。然后我点击了测试顶部的Debug链接。测试被找到了,执行在断点处停止。这是一个非常令人沮丧的问题的简单解决方案。
piv4azn75#
您只需要更改文件名。例如,如果您有customer.js或customer.ts文件,并且您要测试它。请创建一个新文件名为customer.test.js或customer.test.ts,在npm测试之后,它将测试仅用于测试的文件。
c90pui9n6#
我遇到了同样的问题,我想在
drone
CI管道中运行我的测试,但遇到了同样的错误,解决我问题的方法是简单地将workspace
添加到我的项目中。vohkndzv7#
我不是一个Js开发者。
我正在Sonarcloud和github操作上实施安全扫描,因此在运行作业时出现错误
yarn run v1.22.19 $ /home/runner/work/节点项目/节点项目/node_modules/.bin/jest --coverage未找到测试,以代码1退出使用
--passWithNoTests
运行以代码0退出In /home/runner/work/节点项目/节点项目检查了11个文件。testMatch:/测试//.[jt]s?(x),**/?(.)+(规格|测试).[tj]s?(x)- 0匹配测试路径忽略模式:/节点模块/ - 11匹配测试正则表达式:- 0匹配模式:- 0匹配error命令失败,退出代码为1。info有关此命令的文档,请访问https://yarnpkg.com/en/docs/cli/run。错误:进程已完成,退出代码为1。我该怎么办?
我在本地安装了npm jest
ar7v8xwq8#
检查它是否是类似filename.test.js的小写字母。我犯了一个错误ComponentName.Test.js并得到错误,通过ComponetName.test.js修复它