angular app with karmaの単体テストを開始しました。すべてが期待どおりに動作しています
Chrome 26.0(Windows):1の1を実行
Chrome 26.0(Windows):1の1成功を実行(0.878秒/ 0.112秒)
ただし、テストの結果に関する詳細情報を出力する方法はありますか。たとえば、実行しているスイートおよびテスト名とその結果。 Jasmineのテスト結果がブラウザーに出力されるチュートリアルをいくつか読んだことがあります。カルマでも達成できるのだろうか。
私は似たようなものを探していて、これを見つけました: https://github.com/usrz/javascript-karma-verbose-reporter 。この種類の出力を生成します。
$ karma start --reporters=verbose
Suites and tests results:
- the app.router.config module :
* contains a router property : ok
* configures the router title : ok
* should have a login route : ok
- the organization module :
* contains a state property : ok
* should have a streams route after configuration : ok
* when activated, should set state based on organization in route : ok
- the streams module :
* points to state : ok
* loads organization streams upon activation : ok
* loads organization streams via API : ok
Browser results:
- PhantomJS 1.9.8 (Mac OS X 0.0.0): 9 tests
- 9 ok
これをデフォルトのオプションにするために、これをカルマ設定に追加できます。例:
reporters: ['verbose', 'junit']
KarmaのHTMLレポーターを完成させたばかりなので、レポーターに追加できます。コンソールのように追加情報を取得できますが、構成で「singleRun = true」を使用できます。プラグインは次の場所にあります。
https://npmjs.org/package/karma-htmlfile-reporter
「npm install karma-htmlfile-reporter -g」でプラグインをインストールしたら、karma.conf.jsにいくつかの行を追加するだけです。
reporters: ['progress', 'html'],
htmlReporter: {
outputFile: 'tests/units.html'
},
plugins: [
// ... your other plugins here
'karma-htmlfile-reporter'
]
Karmaテストを実行した後、プラグインはブラウザで表示できるスタイル付きHTMLファイルを生成します。
Iljaが言ったように、私はあなたが成功したテストからどのような情報を望んでいるか知りません。ただし、ブラウザでテストを実行している場合は、デバッグページを開くことができます。おそらくhttp://localhost:9876/debug.html
。すべての単体テストはそこでコンソールに記録されます。
このドキュメントは、コンソールで出力を設定するのに役立つかもしれません。
説明されているとおり:
reporters: ['progress', 'junit']
@CarlesBarrobésの回答から。元の質問はangularアプリケーションについて話していました。だから、これをng test
で動作させるための手順をリストすると思いました。
詳細レポーターをインストールします。
npm install --save-dev karma-verbose-reporter
Karma.conf.jsファイルを更新して、以下を含めます。
module.exports = function (config) {
config.set({
plugins: [
require('karma-verbose-reporter')
],
reporters: ['verbose']
});
};
もちろん、レポートに関連する設定のみを含めています。もちろん、設定ファイルには他の設定をそのままにしておきます。
これで、ng test
を実行して詳細な出力を取得できます
あなたが欲しいものを手に入れました。コンソール自体に詳細なレポートが必要です。
'progress'を使用すると、「これでこれだけの成功が得られますが、詳細レポートは出力されません。」
例:1成功の1を実行(0.878秒/ 0.112秒)
reporters: ['progress']
コンソール自体で詳細レポートを印刷するには、ブラウザで「kjhtml」が行うようにコンソールで詳細実行を印刷する「mocha」レポートを使用します。
reporters: ['mocha']
mochaはコンソール自体に印刷され、phantomjsブラウザーとchromeヘッドレスブラウザーで使用されます
同じプラグインが必要です。 link に従ってください