programing

참조 오류:변수를 찾을 수 없음: 각도 테스트에서 모듈

testmans 2023. 9. 27. 17:05
반응형

참조 오류:변수를 찾을 수 없음: 각도 테스트에서 모듈

Angular 컨트롤러에 대한 테스트를 작성하려고 합니다.jasmine karma그리고.angular-mocks, 하지만 계속 오류가 납니다.ReferenceError: Can't find variable: module.

검색을 좀 해봤는데, 이미...angular-mocks내 뱃속에서

제가 여기서 무엇을 놓칠 수 있을까요?

다음은 제 코드입니다.

#controller
angular.module('cook_book_ctrl', [])
.controller('cookBookCtrl', function($scope, CookBook, CookBookRecipesService){

  $scope.cookbookoptions = true;

  CookBook.list()
   .success(function(data){
     $scope.recipeList = data;
     CookBookRecipesService.loadCookBookRecipes($scope.recipeList);
   })
   .error(function(error){
   })
  });

#controller test
describe('CookBook controller spec', function(){
  var $httpBackend, $rootScope, createController, authRequestHandler

  beforeEach(module('cook_book_ctrl'));
})

#bower.json
{
  "name": "HelloIonic",
  "private": "true",
  "devDependencies": {
    "ionic": "driftyco/ionic-bower#1.0.0",
    "ionic-service-analytics": "master",
    "ionic-service-core": "~0.1.4",
    "angular-mocks": "1.3.13"
  },
  "dependencies": {
    "ng-cordova-oauth": "~0.1.2",
    "ng-tags-input": "~2.3.0",
    "angular": "~1.4.0",
    "underscore": "~1.8.3",
    "materialize": "~0.97.0"
  },
  "resolutions": {
    "angular": "~1.4.0"
  }
}


   beforeEach(module('cook_book_ctrl'));
})

업데이트: 명확성을 위해 스크린샷 추가

enter image description here

설치외angular-mocksbower를 통해, 참조를 추가하는 것을 기억하세요.angular-mocks.js아래와 같은 카르마 구성 파일에서

config.set({

    basePath: '../',
    port: '8000',

    files: [
      'bower_components/angular/angular.js',
      'bower_components/angular-mocks/angular-mocks.js',
      ...
    ]

제 경우에도 karma.conf.js의 잘못된 파일 순서에 대한 것이었습니다.

대상:

// list of files / patterns to load in the browser
files: [
  'tests/*.test.js', // this should not be as first!
  'bower_components/angular/angular.min.js',
  'bower_components/angular-mocks/angular-mocks.js',
  'app/*.js',

],

다음이 되어야 합니다.

// list of files / patterns to load in the browser
files: [
  'bower_components/angular/angular.min.js',
  'bower_components/angular-mocks/angular-mocks.js',
  'app/*.js',
  'tests/*.test.js' // now it's cool
],

어쩌면 당연한 일일까, 아닐까? ;-)

언급URL : https://stackoverflow.com/questions/31827257/referenceerror-cant-find-variable-module-in-angular-testing

반응형