0

AMD スタイルのモジュールで Backbone/Marionette と RequireJS を使用してアプリを作成し、それにカバレッジ ステップを追加しようとしましたが、実行時istanbul cover myTestFile.jsに istanbul で次のエラーがスローされます。

__cov_EsyvGtIcLKP7TgjU5WMSQw.s['1']++;define(関数(必須){__cov_EsyvGtIcL define is not defined

ブラウザ側のコードをカバーしたことがなく、AMD スタイル モジュールを使用するのはこれが初めてなので、これを修正する方法はわかりません。

イスタンブールも取材レポートを書いたと言っていますが、それが実際にうまくいったかどうかはわかりません。

どんなポインタでも大いに役立ちます。コマンドの完全な出力は次のistanbul cover mytestfile.jsとおりです (一部の詳細が変更されています)。

=============================================================================
Writing coverage object [/Users/myuser/src/myapp/coverage/coverage.json]
Writing coverage reports at [/Users/myuser/src/myapp/coverage]
=============================================================================

=============================== Coverage summary ===============================
Statements   : 5% ( 1/20 )
Branches     : 0% ( 0/2 )
Functions    : 0% ( 0/5 )
Lines        : 5% ( 1/20 )
================================================================================
/Users/myuser/src/myapp/app/myapp/app-collection.js:9
__cov_EsyvGtIcLKP7TgjU5WMSQw.s['1']++;define(function(require){__cov_EsyvGtIcL
                                      ^
ReferenceError: define is not defined
    at Object.<anonymous> (/Users/mysuser/src/myapp/app/myapp/app-collection.js:9:39)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions.(anonymous function) [as .js] (/usr/local/lib/node_modules/istanbul/lib/hook.js:107:24)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (/Users/myuser/src/myapp/test/specs/applications-tests.js:9:25)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
4

0 に答える 0