vscode jest扩展无法正常工作

lnvxswe2  于 2023-04-09  发布在  Jest
关注(0)|答案(5)|浏览(275)

我使用VSCode,安装了扩展:“笑话”,更好的笑话测试环境。
在扩展的指令中,我看到我们为Jest的命令提供了一个很好的智能感知支持。

问题:

1.我没有得到“笑话”图标的底部酒吧,这意味着ext不能正常工作。
1.我仍然没有得到jest命令的intellisense支持

我的问题:

有没有人遇到过这个问题,并找到了正确配置它的方法?

n6lpvg4x

n6lpvg4x1#

解决方案:

一旦我明白我的文件夹结构是扩展无法正常工作的原因,我就开始使用VSCode的***工作区***。

说明:

当使用***工作区***时,您可以在一个文件夹中有多个项目。每个项目都将被视为根项目。工作区允许您在同一文件夹中有多个根项目(实际上解决了我的问题)。
使用Jest而不设置jest.config.js文件时,您可以将rootDir设置为默认值(即package.json所在的文件夹)。

附言

从我目前的体验来看,***vscode-jest扩展***并不是很稳定,还有一些bug,所以我决定暂时禁用它。

bvpmtnay

bvpmtnay2#

强烈推荐使用jest runner扩展。
演示:

wwtsj6pe

wwtsj6pe3#

在一个新的扩展安装,它没有为我正常工作的权利开箱即用。运行npm run test在WSL 2终端工作,但扩展没有。
我的文件夹结构

root
__tests__
         __testThis__
                     featureA.js    <-- jest tests
         __andThis__
                    feature1.js     <--
                    feature2.js     <--
testThis.js
andThis.js
package.json

我的测试脚本最初是package.json上的"test": "jest --watchAll --maxWorkers=1",
但它终于工作后,做了ff.

(1)Jest图标未出现在底部状态栏

*在.vscode/settings.json中指定jest.rootPath,文档在这里详细说明。

  • 我将我的设置为“”(空),因为我使用testMatch来查找我的测试。
"jest.rootPath": "",

(2)找不到jest命令

  • 确保jest和jest-cli安装在jest扩展使用的shell中
  • 我一直在使用WSL 2运行测试,没有任何问题(没有扩展),但遇到了“jest命令未找到”的扩展。
  • 在Git Bash上安装了jest和jest-cli之后,这就不再是问题了。

(3)扩展运行一瞬间,watch-tests意外结束

  • 我没有使用Jest扩展向导,而是在项目的根目录下运行jest --init创建一个jest.config.js
    *在结果jest.config.js中启用testMatch,以便jest知道在哪里查找测试
testMatch: [
   "**/__tests__/**/*.[jt]s?(x)",
   "**/?(*.)+(spec|test).[tj]s?(x)"
],

(4)测试终于运行了,但它们会重复运行,直到CPU使用率达到--〉~90%

*在.vscode/settings.json中关闭jest autoRun

"jest.autoRun": "off",
  • 单击jest扩展的侧栏图标(锥形瓶),仅在需要时运行测试

即使这样,扩展中的所有内容也不是都能完美地工作(例如调试器仍然不适合我),但是我能够使用扩展运行单个测试(或一次运行所有测试)
希望这能有所帮助!

bjg7j2ky

bjg7j2ky4#

我也遇到了同样的问题。我只是在我的monorepo的根目录下放置了一个jest.config.js,扩展就开始了。问题是,至少对我来说,它正在从根目录开始寻找那个文件,但从来没有找到它。

vxbzzdmp

vxbzzdmp5#

对我有效的是:npm install -g npm@latest
也许你的npm已经过时了。查看链接:https://github.com/jest-community/vscode-jest/issues/838#issuecomment-1289491643

相关问题