Javascript 生产环境中的网页包捆绑测试(酶/jest)

Javascript 生产环境中的网页包捆绑测试(酶/jest),javascript,node.js,webpack,babeljs,Javascript,Node.js,Webpack,Babeljs,我对包含测试文件和测试库的Webpack生成产品包有异议 在这种情况下,我们使用的是酶和笑话 网页包版本3.10.0 Webpack.build.js const path = require('path'); const webpack = require('webpack'); const UglifyJsPlugin = require('uglifyjs-webpack-plugin'); module.exports = function() { return { ent

我对包含测试文件和测试库的Webpack生成产品包有异议

在这种情况下,我们使用的是酶和笑话

网页包版本3.10.0

Webpack.build.js

const path = require('path');
const webpack = require('webpack');
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');

module.exports = function() {
  return {
    entry: './src/index.js',
    output: {
      path: path.resolve(__dirname, '../build'),
      filename: 'bundle.js',
    },
    module: {
      rules: [
        {
          test: /\.js$/,
          exclude: [
            /node_modules/,
            /__snapshots__/,
            /test-util/,
          ],
          loader: 'babel-loader'
        },
        {
          test: /\.scss$/,
          use: [
            {
              loader: 'isomorphic-style-loader'
            },
            {
              loader: 'css-loader'
            },
            {
              loader: 'sass-loader'
            }
          ]
        },
      ]
    },
    plugins: [
      new UglifyJsPlugin(),
      new webpack.DefinePlugin({
        'process.env': {
          'NODE_ENV': JSON.stringify(process.env.NODE_ENV),
        }
      }),
    ]
  }
};
下面是文件结构

我试图通过在网页中放置酶作为外部资源来解决这个问题

externals: {
  'enzyme': 'enzyme',
  'enzyme-adapter-react-16': 'enzyme-adapter-react-16',
}
这确实将其从构建中排除,但(这是一种解决方法)它仍然构建快照文件

我试图使babel loader的“test”正则表达式更加具体,并排除测试文件,但失败了


这是一个新项目,我花了一整天的时间试图使它只捆绑必要的东西。耗尽了我所有的知识,我的谷歌知识和我认识的人或与我一起工作的人的知识。希望这样会更聪明:)

有没有运气弄明白这一点?谢谢至今仍在发生,似乎在什么地方没有答案