Karma在配置文件本身上出现错误:ReferenceError: 找不到变量:module。

3
我已经在karma配置文件中添加了angular和angular-mocks文件,但是在那里之前就出现了错误。
所有在线文档关于此参考错误的信息都说我没有安装angular-mocks,但我非常确定这是规范文件中模块变量的错误,而不是初始karma配置的错误。
以下是我的配置文件。
module.exports = function ( karma ) {

karma.set({ /** * 从哪里查找文件,以此文件所在的位置为起点。 */ basePath: '../',

/**
 * This is the list of file patterns to load into the browser during testing.
 */
files: [
  'vendor/angular/angular.js',
  'vendor/angular-mocks/angular-mocks.js',
  'vendor/angular-bootstrap-jbruni/ui-bootstrap-tpls.min.js',
  'vendor/placeholders/angular-placeholders-0.0.1-SNAPSHOT.min.js',
  'vendor/angular-ui-router/release/angular-ui-router.js',
  'vendor/lodash/dist/lodash.min.js',
  'vendor/angular-breadcrumb/angular-breadcrumb.js',
  'vendor/restangular/dist/restangular.js',
  'build/templates-app.js',
  'build/templates-common.js',

  'src/**/*.js',
  'src/**/*.coffee',
],
exclude: [
  'src/assets/**/*.js'
],
frameworks: [ 'jasmine' ],
plugins: [ 'karma-jasmine', 'karma-firefox-launcher', 'karma-coffee-preprocessor' ],
preprocessors: {
  '**/*.coffee': 'coffee',
},

/**
 * How to report, by default.
 */
reporters: 'dots',

/**
 * On which port should the browser connect, on which port is the test runner
 * operating, and what is the URL path for the browser to use.
 */
port: 9018,
runnerPort: 9100,
urlRoot: '/',

/** 
 * Disable file watching by default.
 */
autoWatch: false,

/**
 * The list of browsers to launch to test on. This includes only "Firefox" by
 * default, but other browser names include:
 * Chrome, ChromeCanary, Firefox, Opera, Safari, PhantomJS
 *
 * Note that you can also use the executable name of the browser, like "chromium"
 * or "firefox", but that these vary based on your operating system.
 *
 * You may also leave this blank and manually navigate your browser to
 * http://localhost:9018/ when you're running tests. The window/tab can be left
 * open and the tests will automatically occur there during the build. This has
 * the aesthetic advantage of not launching a browser every time you save.
 */
browsers: [
  'Firefox'
]

}); };

1个回答

1
我刚遇到了类似的问题。
在Karma配置文件的“files:”部分包含“angular-mocks.js”的路径后,它就能找到该模块。
错误信息为“ReferenceError: Can't find variable: module”。请保留HTML标签。
// list of files / patterns to load in the browser
files: [
  '../js/angular.min.js',
  '../js/myutils-service.js',
  './angular-mocks.js',
  './my-service.js'
],

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接