导出默认为Jest和ES6未采用的路径

时间:2016-11-17 16:45:40

标签: reactjs webpack jestjs istanbul

我有100%覆盖率通过测试的问题。伊斯坦布尔说exports defaults Component未采取其他路径。

正因为如此,我在生成的伊斯坦布尔html中看到我的测试并非完全是100%。主要在“语句和分支”选项卡中。

我正在使用:

  • 反应:15.4.0
  • Jest:17.0.2
  • Webpack:1.12.11

有什么想法吗?

enter image description here enter image description here

1 个答案:

答案 0 :(得分:1)

问题在于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,并在我们添加的package.json中使用了Jest的模块解析器:

"moduleDirectories": [
  "node_modules",
  "src"
],

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