在运行业力测试案例时,我能够获得未捕获的SyntaxError:意外的令牌导出 错误。下面是karma.config.js文件的代码片段 - 请帮助我们,我们很长时间都不知所措......
process.env.BABEL_ENV = "test"
module.exports = function(config) {
config.set({
// base path that will be used to resolve all patterns (eg. files, exclude)
basePath: '',
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
frameworks: ['mocha','chai'],
// list of files / patterns to load in the browser
files: ['node_modules/angular/angular.js',
'node_modules/angular-mocks/angular-mocks.js',
'app/**/*.js',
'app/**/*.spec.js'],
webpackMiddleware: {noInfo:true},
// list of files to exclude
exclude: [
],
// preprocess matching files before serving them to the browser
// available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor
preprocessors:{'app/**/*.js':['webpack'],'app/**/*.spec.js':['webpack']},
babelPreprocessor: {
options: {
"presets": ["es2015"],
"plugins": ["transform-es2015-modules-umd"]
}
},
webpack :{
devtool: 'inline-source-map',
module: {
loaders: [
/* add the appropriate loaders */
/* almost the same as the webpack.config */
{test: /\.json$/,loader: "json-loader"},
{ test: /\.html$/, loader: 'raw' },
{ test: /\.styl$/, loader: 'style!css!stylus' },
{ test: /\.css/, loader: 'style!css' },
{ test: /\.js$/, loader: 'babel-loader',
include:['app/**/*.js','app/**/*.spec.js'],
exclude: ['node_modules'] }
]
}
},
// test results reporter to use
// possible values: 'dots', 'progress'
// available reporters: https://npmjs.org/browse/keyword/karma-reporter
reporters: ['progress', 'coverage'],
coverageReporter: {
reporters:[
{type:'lcov', dir:'coverage/',subdir:'.'},
{type:'json', dir:'coverage/',subdir:'.'},
{type:'text-summary'}
]
},
// web server port
port: 9876,
// enable / disable colors in the output (reporters and logs)
colors: true,
// level of logging
// possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
logLevel: config.LOG_INFO,
// enable / disable watching file and executing tests whenever any file changes
autoWatch: true,
// start these browsers
// available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
browsers: ['Chrome'],
// Continuous Integration mode
// if true, Karma captures browsers, runs the tests and exits
singleRun: false,
// Concurrency level
// how many browser should be started simultanous
concurrency: Infinity,
plugins:[
require('karma-webpack'),('karma-babel-preprocessor'),
('karma-chai'),
('karma-mocha'),
('karma-coverage'),
('karma-chrome-launcher')
]
})
}