我正在使用Karma和茉莉来编写我的单元测试。我将ES6代码转换为ES5以运行测试,但是当我运行测试时,我得到一个错误说:
Chrome 51.0.2704 (Windows 10 0.0.0) ERROR
Uncaught ReferenceError: define is not defined
我的 karma.conf.js 是这样的:
// Karma configuration
// Generated on Wed Jun 08 2016 07:12:07 GMT-0400 (Eastern Daylight Time)
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: ['jspm','jasmine'],
// list of files / patterns to load in the browser
files: [
{pattern: 'lib/**/*.min.js', included: false},
{pattern: 'js/Test/Dashboard/Unit/src/*.js', included: true},
{pattern: 'js/Test/Dashboard/Unit/src/**/*.js', included: true},
{pattern: 'js/Test/*Spec.js', included: true},
{pattern: 'js/Test/**/*Spec.js', included: true}
],
// list of files to exclude
exclude: [],
// test results reporter to use
// possible values: 'dots', 'progress'
// available reporters: https://npmjs.org/browse/keyword/karma-reporter
reporters: ['progress'],
// 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_without_security'],
customLaunchers: {
chrome_without_security: {
base: 'Chrome',
flags: ['--disable-web-security']
}
},
// Continuous Integration mode
// if true, Karma captures browsers, runs the tests and exits
singleRun: false,
// Concurrency level
// how many browser should be started simultaneous
concurrency: Infinity
})
}
运行ES6-ES6的gulp任务是:
gulp.task('build:aurelia', function(){
gulp.src([paths.dashboardPathJs, '!' + paths.dashboardJs])
.pipe(sourcemaps.init())
.pipe(babel({
presets: [ 'es2015-loose', 'stage-1'],
plugins: [
'syntax-flow',
'transform-decorators-legacy',
'transform-flow-strip-types',
'transform-es2015-modules-amd'
]
}))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest('./js/Test/Dashboard/Unit/src'));
});
我完全迷失了为什么我得到的定义没有定义错误。提前谢谢。