【问题标题】:Disable Istanbul for Jest Debugging禁用伊斯坦布尔进行 Jest 调试
【发布时间】:2019-12-11 00:49:43
【问题描述】:

我正在尝试调试一些用 Jest 编写的失败测试。虽然我可以这样做,但附加 chrome 调试器就好了,我注意到伊斯坦布尔显然一直在工作,这让我的文件更难处理。

有谁知道是否有办法禁用伊斯坦布尔,或者以某种方式让 Node 通过等效的地图文件进行调试?

编辑 这是我正在尝试调试的文件示例。在源代码中它被称为 handlerFactory.js 但在 chrome 中,当我从我的测试函数中介入时,我最终调试了 VM3376 handlerFactory.js 文件。

/* istanbul ignore next */
cov_6n2doqihv.s[10]++;

const insertCheckins = postgres => {
  /* istanbul ignore next */
  cov_6n2doqihv.f[2]++;
  cov_6n2doqihv.s[11]++;
  return (
    /**
     * Function to insert the records
     * @param  {Object} checkIns The check-in records
     * @return {Promise}
     */
    async checkIns => {
      /* istanbul ignore next */
      cov_6n2doqihv.f[3]++;
      cov_6n2doqihv.s[12]++;
      return Promise.all(checkIns.map(checkin => {
        /* istanbul ignore next */
        cov_6n2doqihv.f[4]++;
        cov_6n2doqihv.s[13]++;
        return insertRecord(postgres)(checkin);
      }));
    }
  );
};

【问题讨论】:

  • 您能否更具体地了解“地图文件的等价物”?
  • @Teneff 我添加了我所看到的那种代码的示例

标签: node.js jestjs istanbul


【解决方案1】:

伊斯坦布尔默认是禁用的,它可能在 package.jsonjest.config.js 的 jest 配置中启用

要禁用它,您可以删除 configuration

package.json
{
  "jest": {
-    "coverage": true
  }
}

或在没有覆盖的情况下显式运行jest

jest --coverage=false

要在 VSCode 中使用 Nodejs 调试器,您可以查看 the documentation 或尝试使用 this launch.json

【讨论】:

  • 嗯,谢谢。我会四处挖掘,看看我是否能看到它在哪里启用。我查看了文档,没有看到任何有关启用/禁用的信息。
  • @Ian jest --showConfig 可能会为您提供有关当前配置的概述
猜你喜欢
  • 2016-04-05
  • 2016-11-16
  • 1970-01-01
  • 1970-01-01
  • 2023-03-11
  • 2016-02-10
  • 1970-01-01
  • 2015-08-26
  • 2017-06-26
相关资源
最近更新 更多