[英]testing using karma failed : Module app is not available
我在业力配置中包含3个文件:1. angular.js,angular-mock.js和login.spec.js
这是我的login.spec.js:
describe("Hello World example", function() {
beforeEach(module("app"));
var loginCtrl,
scope;
beforeEach(inject(function ($rootScope, $controller) {
scope = $rootScope.$new();
loginCtrl = $controller('loginCtrl', {
$scope: scope
});
}));
it('says hello world!', function () {
expect(scope.hello).toEqual("Hello");
});
});
所以我的login.js(控制器)看起来像这样
angular.module('app')
.controller('loginCtrl', function($scope, $rootScope, $location) {
$scope.hello = 'hello';
});
但是我得到Module 'app' is not available!
我看不到您正在创建应用程序模块。 您还应该将app.js以及测试所需的所有资源都包括到karma.json中。
您只需要将此行添加到login.js文件的顶部:
这声明了模块:
angular.module('app', []);
这将获取模块的实例(如您所做的那样):
angular.module('app')
.controller('loginCtrl', function($scope, $rootScope, $location) {
$scope.hello = 'hello';
});
这是一个非常相似的工作Plunkr: http ://embed.plnkr.co/O1otV47VxsIL5krAdUW0/preview
您还提到,您已经向业力配置中添加了3个文件,而没有提及login.js。 这也需要添加。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.