2014-10-28 3 views
0

Я тестирую угловую службу в карме, и она работает сначала, но через некоторое время тесты терпят неудачу, и мне нужно перезапустить карму.Все тесты кармы терпят неудачу через некоторое время

Сообщение об ошибке я получаю: Ошибка: [$ Инжектор: unpr] Неизвестный поставщик: Score2Provider < - Score2

бегаю карму со следующим конф:

module.exports = function(config){ 
    config.set({ 

    basePath : './', 

    files : [ 
     'bower_components/angular/angular.js', 
     'bower_components/lodash/dist/lodash.js', 
     'bower_components/angular-route/angular-route.js', 
     'bower_components/angular-mocks/angular-mocks.js', 
     'tests/main-mock.js', 
     'client/js/score2.js', 
     'tests/*.js', 
    ], 

    autoWatch : true, 

    frameworks: ['jasmine'], 

    browsers : ['Chrome'], 

    plugins : [ 
      'karma-chrome-launcher', 
      'karma-jasmine', 
      ], 
    }); 
}; 

Я бегу это на машине Windows 8.1.

И, как я уже сказал, он работает сначала, но через несколько минут все тесты не сработают с этим сообщением об ошибке. У кого-нибудь еще была эта проблема, и кто-нибудь знает, как ее исправить?

+0

Score2Provider не доступен "второй" времени. Как вы запускаете тесты во второй раз? Каковы различия между первым прогоном и вторым прогоном? – bhantol

+0

Да, я знаю. Поскольку я использую autoWatch, он запускается снова каждый раз, когда я обновляю файл. И через некоторое время он ломается, но если я перезапущу карму, он снова работает, поэтому я не думаю, что это ошибка в моем коде. Это похоже на то, что часы как-то не могут правильно прочитать файл. – bobbarebygg

+0

Я действительно предлагаю проблемы в том, как вы это настраиваете/Используете ли вы свой Grunt/Gulp? Если да, опубликуйте соответствующие разделы оттуда. Если вы не сообщите нам, как вы вызываете тест. – bhantol

ответ

0

Score2 - это сервис, поэтому он зависит от модуля. Модуль может быть изменен во время испытаний из-за:

  • Инъекционных другой модуль с тем же именем
  • Декларированием другого модуля с тем же именем
  • Спасаясь проблемой при копировании обновленных файлов
  • Реорганизации beforeEach метод источника

Очистка любых глобальных переменных в afterEach для предотвращения этого.

Ссылки

Смежные вопросы