我在以 100% 的覆盖率通过测试时遇到问题。 Istanbul 尔说没有采用 exports defaults Component else 路径。

因此,我在生成的 Istanbul 尔 html 中看到我的测试未完全达到 100%。主要在语句和分支选项卡中。

我正在使用:

  • react :15.4.0
  • 玩笑:17.0.2
  • 网络包:1.12.11

  • 任何想法?

    reactjs - 导出 Jest 和 ES6 未采用的默认其他路径-LMLPHP
    reactjs - 导出 Jest 和 ES6 未采用的默认其他路径-LMLPHP

    最佳答案

    问题出在 jest 配置中,我们使用预处理器来解决一些导入问题:

    在 json 包中,我们有这个:

    "transform": {
      "^.+\\.js$": "<rootDir>/cfg/preprocessor.js"
    },
    

    该文件包含以下内容:
    const babelJest = require('babel-jest');
    require('babel-register');
    const webpackAlias = require('jest-webpack-alias');
    
    module.exports = {
      process: function (src, filename) {
        if (filename.indexOf('node_modules') === -1) {
          src = babelJest.process(src, filename);
          src = webpackAlias.process(src, filename);
        }
        return src;
      }
    };
    

    我们更新到 Jest v20 并使用 Jest 的模块解析器,在我们的 package.json 中我们添加了:
    "moduleDirectories": [
      "node_modules",
      "src"
    ],
    

    并从 transformpackage.json 文件中删除了 preprocessor.js 配置。

    关于reactjs - 导出 Jest 和 ES6 未采用的默认其他路径,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40660511/

    10-13 07:24