javascript – Karma找不到配置文件中指定的文件

我正在为我的 Angularjs应用程序编写Jasmine测试.
我使用karma init生成了karma.conf.js,但是当我运行karma start时,我得到这样的警告:
WARN [web-server]: 404: /bower_components/angular/angular.js
WARN [web-server]: 404: /js/app.js

karma.conf.js在我的app文件夹中,也就是bower_components文件夹的位置.

我想也许这可能是因为我使用这种方法的本地测试服务器:https://github.com/mhevery/angular-node-socketio

(我已经能够在没有测试服务器的其他项目中设置这样的测试)

请问有谁可以指出我正确的方向吗?

更新:

我的karma.conf.js看起来像这样:

module.exports = function(config) {
  config.set({
    basePath: '.',frameworks: ['jasmine','requirejs'],files: [
      'tests/*.js','js/*.js','bower_components/angular/angular.js','bower_components/angular-mocks/angular-mocks.js','bower_components/angular-resource/angular-resource.js','bower_components/d3/d3.js'
    ],exclude: [],reporters: ['progress'],port: 9876,colors: true,logLevel: config.LOG_INFO,autoWatch: true,browsers: ['Chrome'],captureTimeout: 60000,singleRun: false
  });
};

这是我的目录结构:

解决方法

现在您已经修复了基本路径(从’.’到”,请参阅上面的问题评论),您应该更改karma.conf.js中加载的文件的顺序:
module.exports = function(config) {
  config.set({
    basePath: '.',files: [
      //load angular.js first
      //(unless if you use jQuery which must be first if I remember well)
      'bower_components/angular/angular.js',//Then angular-modules
      'bower_components/angular-resource/angular-resource.js',//Other libs
      'bower_components/d3/d3.js',//Your app scripts
      'js/*.js',//And your specs 
      'tests/*.js'
    ],singleRun: false
  });
};

你可以在这里找到更多信息:http://karma-runner.github.io/0.10/config/files.html

Ordering

  1. The order of patterns determines the order of files in which they are included in the browser.
  2. Multiple files matching a single pattern are sorted alphabetically.
  3. Each file is included exactly once. If multiple patterns match the same file,it’s included as if it only matched the first pattern.

相关文章

kindeditor4.x代码高亮功能默认使用的是prettify插件,prett...
这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代...
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面
如何用js控制图片放大缩小