17

私は Ember CLI を使用しており、testem で実行される組み込みの Qunit テストとコード カバレッジ レポートを統合しようとしています。イスタンブールを使用しようとしましたが、tmp ディレクトリを探しているように見えるため、計測するファイルを見つけることができませんでした。私はtestem.jsonでこれをやってみました:

{
"framework": "qunit",
"serve_files": [
    "instrumented/components/*.js"
],
"before_tests": "istanbul instrument --output instrumented/components app/components",
"after_tests": "istanbul report",
"test_page": "tests/index.html",
"launch_in_ci": ["PhantomJS"],
"launch_in_dev": ["PhantomJS", "Chrome"],
"reporter": "tap"
}

しかし、次のようなエラーが発生し続けました: not ok 1 Error --- message: >

        fs.js:684
          return binding.stat(pathModule._makeLong(path));
                         ^
        Error: ENOENT, no such file or directory '/Users/Robert/ui/tmp/class-tests_dist-hqZLfsWS.tmp/app/components'
            at Object.fs.statSync (fs.js:684:18)
            at InstrumentCommand.Command.mix.run (/usr/local/lib/node_modules/istanbul/lib/command/instrument.js:230:20)
            at runCommand (/usr/local/lib/node_modules/istanbul/lib/cli.js:58:19)
            at runToCompletion (/usr/local/lib/node_modules/istanbul/lib/cli.js:62:5)
            at Object.<anonymous> (/usr/local/lib/node_modules/istanbul/lib/cli.js:67:5)
            at Module._compile (module.js:456:26)
            at Object.Module._extensions..js (module.js:474:10)
            at Module.load (module.js:356:32)
            at Function.Module._load (module.js:312:12)
            at Function.Module.runMain (module.js:497:10)

Karmaも使ってみましたが、構成がわかりませんでした。ブランケットも試してみましたが、トランスパイルされたコードが 100% カバーされているという誤った報告しか得られませんでした。

トランスパイルされたコードがどのように機能するかを完全には理解していません。また、これにアプローチする最善の方法が何であるかもわかりませんが、素晴らしいコード カバレッジ レポートを取得する方法について正しい方向に向けるための助けがあれば幸いです。 .

何らかのコード カバレッジ レポートの統合に成功した人はいますか?

4

2 に答える 2

3

イスタンブールのコード カバレッジ用の新しい Ember アドオンが追加されました。Ember-CLI-Blanket は機能しなくなりました。

新しいアドオンはこちらにあります: https://github.com/kategengler/ember-cli-code-coverage

于 2016-07-26T15:14:50.287 に答える