Javascript 生产环境中的网页包捆绑测试(酶/jest)
我对包含测试文件和测试库的Webpack生成产品包有异议 在这种情况下,我们使用的是酶和笑话 网页包版本3.10.0 Webpack.build.jsJavascript 生产环境中的网页包捆绑测试(酶/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
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”正则表达式更加具体,并排除测试文件,但失败了
这是一个新项目,我花了一整天的时间试图使它只捆绑必要的东西。耗尽了我所有的知识,我的谷歌知识和我认识的人或与我一起工作的人的知识。希望这样会更聪明:)有没有运气弄明白这一点?谢谢至今仍在发生,似乎在什么地方没有答案