Browserify、6to5ify、および Karma を使用してうまくプレイし、スペックを正常に実行しています。しかし、コード カバレッジを追加すると、状況は悪化します。私はいくつかのアプローチを試しました:
browserify-istanbul
karma.conf.js に変換を追加します。ただし、これにより、スペックファイルでインストルメンテーションを実行しようとするだけでなく、表示されます。coverage
ソース ファイルに対してプリプロセッサを実行します。しかし、イスタンブール (でも) は私のbrowserify 変換をdouglasduteil/karma-coverage#next
読み取らないため、(ステートメントのために) 解析しようとする最初のファイルですぐにクラッシュするか、または karma-coverage#next を使用すると、マッピングを尊重しません私のpackage.json(モバイルプロジェクト、バックボーンを外骨格にマッピング)。6to5ify
import
browser
今、私のkarma.conf.js
見た目は次のようになります。
module.exports = function(karma){
karma.set({
frameworks: ["browserify", "mocha", "chai-sinon"],
browserify: {
debug: true,
extensions: [".js", ".hbs"],
transform: ["6to5ify", "hbsfy"]
},
reporters: ["dots", "osx", "junit", "coverage"],
coverageReporter: {
type: "text"
},
junitReporter: {
outputFile: "spec/reports/test-results.xml"
},
preprocessors: {
"src/javascript/**/*": ["coverage"],
"spec/**/*": ["browserify"]
},
browsers: ["PhantomJS"],
files: ["spec/unit/**/*Spec.js"],
logLevel: "LOG_DEBUG",
autoWatch: true
});
};
これをすべて一緒に機能させる方法がわかりません。これらの指示browser
に従ってみましたが、 のノードに従わなかったため、うまくいきませんでしたpackage.json
。どんな助けでも大歓迎です。