1

当我在模块中定义我的组件时,我无法让我的单元测试在 Angular.js 中工作。这是我在 Jasmine 中使用 Karma 测试运行器的单元测试。我看过几篇文章,看起来这是测试模块控制器的方法。但是,我的测试运行器输出显示“未定义模块”。我不确定我错过了什么。我需要在 karam.conf.js 中配置一些东西吗?

describe('bulkEditor factories', function() {
    beforeEach(module('BulkEditor'));

    it('should see the controller', inject(function($controller) {
        expect($controller('GroupController'.toBeTruthy()));
    }));

});

这是我的 karma.conf.js 文件中的一部分,它显示了包含的文件列表:

files = [
  JASMINE,
  JASMINE_ADAPTER,
  'https://ajax.googleapis.com/ajax/libs/angularjs/1.0.6/angular.min.js',
  'app/js/app/**/*.js',
  'test/*.spec.js'
];
4

1 回答 1

2

和函数在文件module中定义。您可以从http://code.angularjs.org/获取它(例如:http ://code.angularjs.org/1.0.6/angular-mocks.js )。injectangular-mocks.js

我必须说我已经将 Karma 与通过 CDN 引用的文件一起使用,但无论如何 angular-mocks.js 都没有部署在 CDN 上,因此您必须从http://code.angularjs.org/获取它

于 2013-04-24T06:00:38.527 回答