2016-05-04 6 views
1

が必要です。GithubのTealium AngularJS libを私のSPAのバウアーコンポーネントとして追加しました。これは即座に私の単体テストを破った。私はそれがまだ基本hrefが設定されているメインのindex.htmlファイルをまだ使用しているはずなので、なぜ理解できませんか?

私は、コマンドラインを形成gulp testを実行すると、私はこのエラーを取得:

PhantomJS 1.9.8 (Windows 7 0.0.0): Executed 11 of 118 SUCCESS (0 secs/0.721 secs) 

    PhantomJS 1.9.8 (Windows 7 0.0.0): Executed 12 of 118 SUCCESS (0 secs/0.73 
    secs) 

    PhantomJS 1.9.8 (Windows 7 0.0.0): Executed 13 of 118 SUCCESS (0 secs/0.741 secs) 

    PhantomJS 1.9.8 (Windows 7 0.0.0) ERROR 

     Error: [$location:noc:/dev/code/new-site-ui] $location in HTML5 mode requires a <c:/dev/code/new-site-ui> tag to be present! 

    http://errors.angularjs.org/1.4.8/$location/noc:/dev/code/new-site-ui 
    at c:/dev/code/new-site-ui/bower_components/angular/angular.js:12197 

PhantomJS 1.9.8 (Windows 7 0.0.0): Executed 13 of 118 ERROR (0 secs/0.741 secs) 

PhantomJS 1.9.8 (Windows 7 0.0.0): Executed 13 of 118 ERROR (0.004 secs/0.741 secs) 

[13:03:12] 'test' errored after 3.67 s 
[13:03:12] Error: Failed 1 tests. 

    at c:\dev\code\new-site-ui\gulp\unit-tests.js:41:58 
    at removeAllListeners (c:\dev\code\new-site-ui\node_modules\karma\lib\server.js:336:7) 
    at Server.<anonymous> (c:\dev\code\new-site-ui\node_modules\karma\lib\server.js:347:9) 
    at Server.g (events.js:199:16) 
    at Server.emit (events.js:129:20) 
    at net.js:1421:10 
    at process._tickCallback (node.js:355:11) 

Process finished with exit code 1 

私は2日間これで戦ってきた...誰もが提案を持っていますか?

+0

あなたが求めている場合はそれがあなたが ''タグを有することを意味します、 右? – MaKCbIMKo

+0

はい..メインのindex.htmlすべてのテストはうまく動作しますが、githubのlibを追加したときにテストの順番が来ると失敗します – Dennis

答えて

13

には<base href="/">が本当にありますか?あなたは、角のモジュールの設定にこれを追加することができます<base>要素の必要性を回避するために

$locationProvider.html5Mode({ 
    enabled: true, 
    requireBase: false 
}); 

DOC:https://docs.angularjs.org/error/$location/nobase

+0

私はそれを試みましたが、もちろん動作します..しかしrequireBaseをオフにしますあなたのサイトをクロールし、IE9の相対パスを解決するには、googleの読み込みが悪いですか? – Dennis

+0

誰かが、ベースhrefが設定されていない可能性がある単体テストを実行しているときにJasmineがindex.htmlを作成することを提案しましたか? – Dennis

+1

ええと、私はJasmineとPhantomJSがどのように干渉しているのかよく分かっていませんが、実際には別のhtmlファイルが作成された場合、ページメタの設定方法についてphantomJS docを探す必要があります。申し訳ありませんが、私はもっと助けません。 (あるいは、私は終わりから終わりまでのテストとジャスミン/サービスユニットテストのためのカルマのために分度器をお勧めします) – floribon

関連する問題