0

この非常に優れた残り火テスト サンプルを見つけました。

https://github.com/toranb/ember-testing-example

実行できましたが、カルマカバレッジを機能させることができず、エラーは次のとおりです。

エラー [カバレッジ]: [TypeError: 未定義のプロパティ 'covered' を設定できません] TypeError: 未定義のプロパティ 'covered' を設定できません

karma.conf.js ファイルと package.json のみを更新しました

パッケージ.json

{
  "dependencies": {
    "bower": "*",
    "karma-ember-preprocessor": "*",
    "karma-qunit": "*",
    "karma": "0.10",
    "karma-coverage": "~0.1"
  },
  "scripts": {
    "postinstall": "bower install"
  }
}

カルマ.conf.js

module.exports = function(karma) {
    karma.set({
        basePath: 'js',

        files: [
          "vendor/jquery/jquery.min.js",
          "vendor/handlebars/handlebars.js",
          "vendor/ember/ember.js",
          "vendor/jquery-mockjax/jquery.mockjax.js",
          "app.js",
          "tests/*.js",
          "templates/*.handlebars"
        ],

        // coverage reporter generates the coverage
        reporters: ['progress', 'coverage'],

        //logLevel: karma.LOG_ERROR,
        logLevel: karma.LOG_DEBUG,
        browsers: ['PhantomJS'],
        singleRun: true,
        autoWatch: true,

        frameworks: ["qunit"],

        plugins: [
            'karma-qunit',
            'karma-coverage',
            'karma-chrome-launcher',
            'karma-ember-preprocessor',
            'karma-phantomjs-launcher'
        ],

        preprocessors: {
            "**/*.handlebars": ['ember','coverage']
        },

        // optionally, configure the reporter
        coverageReporter: {
            type : 'html',
            dir  : 'coverage/'
        }
    });
};

私が欠けているものを教えてください。適切に構成されていないと思われ、この行が問題である可能性があります。

    preprocessors: {
        "**/*.handlebars": ['ember','coverage']
    },

どんな助けでも大歓迎です。

4

1 に答える 1

0

preprocessors: {
        "**/*.handlebars": 'ember',
        "**/*.js": 'coverage'
    },

上記により、Karma からカバレッジ レポートを作成できます。

注: この種の構成は、最新の ES6 モジュールでは機能しません。

于 2014-11-14T19:41:11.160 に答える