Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Testing 如何通过karma测试中的AngularJS$scope_Testing_Angularjs_Scope_Inject_Karma Runner - Fatal编程技术网

Testing 如何通过karma测试中的AngularJS$scope

Testing 如何通过karma测试中的AngularJS$scope,testing,angularjs,scope,inject,karma-runner,Testing,Angularjs,Scope,Inject,Karma Runner,我开始写一些关于因果报应的测试,为了乞求,我决定试试简单的测试。但是,我得到了两个错误(一个与jasmine有关,另一个与inject有关(我在尝试angular.inject时得到了相同的错误): Firefox 22.0(Windows):执行1次中的1次(1次失败)(0.48秒/0.011秒) 我有一个简单的控制器: app.controller("ConfigurationController", ["$scope", "$http", function($scope, $http) {

我开始写一些关于因果报应的测试,为了乞求,我决定试试简单的测试。但是,我得到了两个错误(一个与jasmine有关,另一个与inject有关(我在尝试angular.inject时得到了相同的错误):

Firefox 22.0(Windows):执行1次中的1次(1次失败)(0.48秒/0.011秒)

我有一个简单的控制器:

app.controller("ConfigurationController", ["$scope", "$http", function($scope, $http) {
$scope.configuration = {};
}]);
简单测试:

'use strict';

describe('ConfigurationController', function() {
var scope, ctrl;
//you need to indicate your module in a test
beforeEach(angular.module('AmphinicyLunch'));
beforeEach(inject(function($rootScope) {
    scope = $rootScope.$new();
    ctrl = $controller("ConfigurationController", {$scope: scope})
}));

it("should have defined configuration", function($scope) {
    dump($scope.configuration);
    expect($scope.configuration).toEqual({});
});

}))

对于注入错误,需要包含angular-mocks.js。模块和注入都在该文件中定义。恐怕我不知道Jasmine错误。

对于注入错误,您需要包括angular-mocks.js。模块和注入都在该文件中定义。恐怕我不知道Jasmine错误。

解决方法是将其包含在karma.conf.js中:

files: [
  'app/bower_components/angular/angular.js',
  'app/bower_components/angular-mocks/angular-mocks.js', <--------- notice mocks here
  'app/bower_components/angular-resource/angular-resource.js',
  'app/bower_components/angular-cookies/angular-cookies.js',
  'app/bower_components/angular-sanitize/angular-sanitize.js',
  'app/bower_components/angular-route/angular-route.js',
  'app/scripts/*.js',
  'app/scripts/**/*.js',
  'test/mock/**/*.js',
  'test/spec/**/*.js'
],
文件:[
'app/bower_components/angular/angular.js',

“app/bower_components/angular mocks/angular mocks.js”,解决方案是将其包含在karma.conf.js中:

files: [
  'app/bower_components/angular/angular.js',
  'app/bower_components/angular-mocks/angular-mocks.js', <--------- notice mocks here
  'app/bower_components/angular-resource/angular-resource.js',
  'app/bower_components/angular-cookies/angular-cookies.js',
  'app/bower_components/angular-sanitize/angular-sanitize.js',
  'app/bower_components/angular-route/angular-route.js',
  'app/scripts/*.js',
  'app/scripts/**/*.js',
  'test/mock/**/*.js',
  'test/spec/**/*.js'
],
文件:[
'app/bower_components/angular/angular.js',
'app/bower_components/angular mocks/angular mocks.js',