2016-12-31 4 views
0

カルマを使ったジャスミンテストの新機能です。テストを実行中にエラーが発生しました。ここでカルマを使った角度アプリテスト

enter image description here

私のファイルがあります。

message.service.js //サービスファイル

(function() { 

    'use strict'; 

    angular.module("app").factory('MessageService', [MessageService]); 

    function MessageService() { 
     var service = {}; 
     //var gui = require('nw.gui'); 

     service.alert = function() { 
     //gui.Window.open('/'); 
      //$window.open('/message'); 
      return 'hello'; 
     }; 

     return service; 
    }; 

})(); // IIFE 

message.service.spec.js //サービスのテストファイル

describe('Message Service', function() { 

    var messageService; 
    beforeEach(angular.mock.module('app')); 

    beforeEach(inject(function(_MessageService_) { 
    messageService = _MessageService_; 
    })); 

    it('should exist', function() { 
    expect(messageService).toBeDefined(); 
    }); 

    it('should return hello', function() { 
    expect(messageService.alert()).toEqual('hello'); 
    }); 

}); 

app.module.js //メインアプリファイル

(function() { 

    'use strict'; 

    angular.module("app", ['ngRoute', 'ui.bootstrap', 'ui.router']); 

    /*angular.module("app").run(['$rootScope', 'StartupService', function($rootScope, startupService){ 
     startupService.init($rootScope); 
    }]);*/ 

})(); // IIFE 
0私は

angular.module("app",[]).factory('MessageService', [MessageService]); 

にmessage.service.js

angular.module("app").factory('MessageService', [MessageService]); 

に次の行を変更した場合

は、次にテストが正常に動作しますが、アプリケーションは、(私が推測するモジュールの開始を再による)が動作しません。テストと通常のアプリケーションの実行の両方でアプリケーションを動作させるにはどうすればよいですか?あなたのお手伝いをよろしくお願いいたします。

+0

あなたのmessage.jsファイルを投稿してください。 – Sajeetharan

+0

こんにちはaruna、教えてください – Sajeetharan

+0

こんにちはSajeetharan、 これは同じファイルmessage.service.jsです。私は名前を変更しました。 – Aruna

答えて

0

私の間違いでした。私はui.bootstrapモジュールに関連するカルマの設定にjsファイルを含めていません。その後、正常に動作しました。

このようなエラーを受け取った人は、カルマの設定にすべての依存関係ファイルが含まれているかどうかを確認してください。メインアプリケーションで定義したものです。

例:メインのアプリファイルは以下のようになります。

angular.module("app", ['ngRoute', 'ui.bootstrap', 'ui.router']); 

その後、あなたのカルマの設定ファイルには、あなたの助けのために、この

files: [ 
    'assets/lib/angular/angular.min.js', 
    'assets/lib/angular-ui-router/angular-ui-router.min.js', 
    'assets/lib/angular-bootstrap/ui-bootstrap-tpls-1.3.2.min.js' 
], 

おかげのようになります。

関連する問題