1

カルマ/ジャスミンを使用して、coffeescript/angularjsコードの単体テストに成功しています。

テストの 1 つが失敗したため、coffeescript コードにブレークポイントを配置したいと考えています。

WebStorm 7 がトランスパイルされた JavaScript を元の coffeescript に関連付けることができるように、ソースマップを提供する必要があることを理解しています (以下のカルマ構成を参照)。

これらの質問は私が始めるのに役立ちましたが、問題を完全には解決していません:

ここで、デバッグすると、ブレークポイントを含むすべての coffeescript ファイルが一時停止しますが、ブレークポイントではなく、通常はファイルの最初の行またはブレークポイントを含む関数です。

ここに画像の説明を入力

実行を継続すると、単純に最後まで実行され、内側のブレークポイントにはヒットしません。

coffeescript をステップ実行しようとすると、jasmine.js コードに移動します。jasmine コードのステップ スルーを続けると、テスト スイートは最終的に完了しますが、ブレークポイントには到達しません。

これが私のカルマ設定の関連部分です。

カルマ.config.js

files: [
        'App.UnitTests/lib/http_ajax.googleapis.com_ajax_libs_angularjs_1.2.0-rc.2_angular.js',
        'App.UnitTests/lib/http_ajax.googleapis.com_ajax_libs_angularjs_1.2.0-rc.2_angular-sanitize.js',
        'App.UnitTests/lib/http_angular-ui.github.io_ui-router_release_angular-ui-router.js',
        'App.UnitTests/lib/http_ajax.googleapis.com_ajax_libs_angularjs_1.2.0-rc.2__angular-mocks.js',
        'App.FrontEnd/coffee/**/*.coffee',
        'App.UnitTests/tests/**/*.spec.coffee'
    ],

    preprocessors : {
        'App.FrontEnd/coffee/**/*.coffee':'coffee',
        'App.UnitTests/tests/**/*.spec.coffee':'coffee'
    },

    coffeePreprocessor: {
        options: { bare: true, sourceMap: true },
        transformPath: function ( path ) { return path.replace( /.js$/, '.coffee' ); }
    },
4

0 に答える 0