【问题标题】:Running jest tests directly in Intellij Idea/WebStorm?直接在 Intellij Idea/WebStorm 中运行笑话测试?
【发布时间】:2015-04-27 19:15:27
【问题描述】:

我正在使用jest 在我的 ReactJS 应用程序中编写测试。 到目前为止,要运行我的测试套件,我需要输入'npm test'

这是来自 package.npm 的 sn-p:

 "scripts": {
    "test": "./node_modules/.bin/jest",
    (other stuff)
  },
  "jest": {
    "unmockedModulePathPatterns": ["<rootDir>/node_modules/react"],
    "scriptPreprocessor": "<rootDir>/node_modules/babel-jest",
    "testFileExtensions": [
      "es6",
      "js"
    ],
    "moduleFileExtensions": [
      "js",
      "json",
      "es6"
    ]
  },

是否可以直接在我的 IDE (IDEA/WebStorm) 中运行这些测试,同时保留配置?我不是 js 人,但例如 WebStrom 与 Karma 完美配合。 jest-cli 也不应该这样吗?

【问题讨论】:

    标签: unit-testing intellij-idea reactjs webstorm jestjs


    【解决方案1】:

    要使 Jest 测试结果显示在树视图中(如 karma 等),需要特殊的集成。 WebStorm 还不支持 Jest。请投票给WEB-14979 以获取任何进展通知。


    编辑:截至 2017 年 3 月,Jest 集成的第一个版本在 WebStorm has been released

    【讨论】:

    • 有什么方法可以像 mocha 测试一样通过添加节点调试配置来调试它?
    • 我不关心树形视图。我只想能够从 IntelliJ 运行测试(尤其是在个人基础上),并查看带有链接的堆栈跟踪!
    • 但是 webstorm 中带有 jest 的测试套件的“自动运行”功能启动起来太慢了。 CLI 仍然是要走的路...
    • 我刚刚将 Webstorm 2017.1.4 设置为原生使用 Jest 进行调试。单击配置下拉菜单,选择编辑配置,单击绿色 +,然后选择 Jest(您也可以在此处设置特殊选项,但默认设置对我来说非常适合)。
    • 我正在尝试设置,但您的链接都没有帮助我配置 IntelliJ
    【解决方案2】:

    在 WebStorm 9+ 中,您可以按如下方式进行设置:

    • 安装 Jest CLI:npm install --save-dev jest-cli

    • 创建节点运行配置,其中 javascript 文件设置为 node_modules/.bin/jest,应用程序参数设置为 --runInBandrunInBand 告诉jest 在单进程中运行,否则在调试模式下运行多个节点进程时会出现端口冲突

    • 创建一些测试并在调试模式下运行配置 (Ctrl-D/CMD-D)。如果您在测试或应用代码中设置断点,它们应该会命中

    如果您可以单击输出中的file:line numbers 直接转到代码,那就太好了。

    【讨论】:

    • 谢谢,但我得到 SyntaxError: Unexpected reserved word 在 transformAndBuildScript (node_modules/jest-cli/node_modules/jest-runtime/build/transform.js:320:12)
    • 确保 not 在 jest bin 路径的开头有斜线。
    • 实际上它现在只在调试@sim时在JSX代码处崩溃
    • 注意:IntelliJ 目前无法使用 Node 8 调试 Jest。切换到 Node 7 并且它工作正常:youtrack.jetbrains.com/issue/WEB-27144github.com/nodejs/node/issues/7593
    【解决方案3】:

    app_sciences 的答案很棒,但不适用于 Windows。

    对于windows,你可以使用下一个配置:

    提供的配置取自here

    【讨论】:

    【解决方案4】:

    对于 IDEA,我为此目的使用了 https://confluence.jetbrains.com/display/IDEADEV/Run+Configurations。对于 WebStorm,您似乎可以自己添加配置 https://www.jetbrains.com/webstorm/help/creating-and-editing-run-debug-configurations.html 。您正在谈论的配置是在软件级别上。如果您将配置为通过您的 IDE 运行它,它肯定会在给定的 ENV 变量和路径中运行,您只需要添加所需的全局路径和要运行的命令。

    【讨论】:

    • 我不想只添加运行配置。我希望我的测试结果在 IDE 中可见,因此我可以轻松导航到失败的结果,然后导航到某些代码行等
    • 只需在 package.json 中创建 npm 脚本(例如称为 test),然后在 webstorm 中选择 NPM 运行配置
    • 这对调试有什么帮助? @KrzysztofKaczor
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-13
    • 1970-01-01
    相关资源
    最近更新 更多