我有以下脚本:
"build": "NODE_ENV=production webpack
--progress
--profile
--config scripts/webpack.build.config.js
--mode production"
当我使用我的配置构建项目时,一切都很顺利。
"test": "cross-env NODE_PATH=$NODE_PATH:./src NODE_ENV=test
nyc mocha
--timeout 30000
--exit \"./src/**/*.test.js\"
--require babel-register
--require babel-polyfill"
但是当我尝试运行 npm run test
时我有一个错误,该文件
我导入的内容收不到
SyntaxError: D:/workspace/messaging-server/src/resources/templates/chat.messages.mustache.template: Unexpected token (1:0) 1
<table width="100%" height="100%" bgcolor="#F0F0F0">
有没有办法根据 webpack 配置运行 mocha 测试?
最佳答案
我通过这种方式解决了问题:
创建新文件babel-ignored.js
require.extensions['.png'] = function () {
return null;
};
require.extensions['.template'] = function () {
return null;
};
然后我添加到脚本 --require babel-ignored.js
"test": "cross-env NODE_PATH=$NODE_PATH:./src NODE_ENV=test
nyc mocha
--timeout 30000
--exit \"./src/**/*.test.js\"
--require babel-register
--require babel-polyfill"
--require babel-ignored.js
现在,获取任何带有 .png
和 .template
扩展名的文件都会被 babel-register 忽略,这解决了我的问题
关于node.js - 如何使用 webpack url-loader 运行 mocha 测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50463630/