CircleCI の案内に Karma が無かったので書いておく.
前提
Karma 1.3.0 以上
CircleCI は 2016/11/06 時点
karma-junit-reporter を追加
CircleCI では Cucumber JSON か JUnit XML の形式がサポートされているので, JUnit 形式で出力してくれる npm パッケージを npm の依存関係に追加する.
bash
npm install karma-junit-reporter --save-dev
karma.conf.js を編集
注意するのは,CircleCI のレポート出力先は環境変数で指定しなければいけないので,Karma の設定ファイル内で環境変数を読む必要があるところ.Node.js の process.env が使える.
ローカルで回したときはレポート用の JUnit は必要ないけれども,一応ビルド成果物の出るディレクトリ (下の例なら dist
) に吐き出しておく.
module.exports = function(config) {
+ var reportDir = process.env['CIRCLE_TEST_REPORTS'] || 'dist/tests';
config.set({
...
plugins: [
...
+ 'karma-junit-repoter'
],
...
reporters: [
'dots',
+ 'junit'
],
+ junitReporter: {
+ outputDir: reportDir + '/junit',
+ outputFile: 'test-results.xml',
+ suite: '',
+ useBrowserName: false
+ },
...
})
}