2011-04-19 27 views
7

統合テストにはjunitを使用します。テストはEclipseとJenkinsで実行されています。junitテストの実行結果をデータベースに記録する方法

私はすべてのjunitテストの実行結果をデータベースに記録して、簡単にレポートできます(テストクラス/メソッド名、環境、継続時間、成功を記録したい)。 私はjunitの結果xmlsを解析することを考えていましたが、それをデータベースに直接記録することは私にとっても良いことです。それは邪魔になるが、かなりエレガントに聞こえる。

通常、テストメソッドに@Test注釈を付けるだけで、私たちはjunitテストメソッドを持っています。

これは、junitの周りに追加のフレームワークがないことを意味します。私はそれをそのままにしておきたいと思います。私はその種のログを実装したい場合、おそらくjunitにハックする必要があることを意味するのではないかと恐れています。

うまくいけば誰でもやってアドバイスできますか?多分あなたはどのように/ junitにフックを配置するかについてのアイデアを持っています。または、私の問題へのより簡単なアプローチがありますか?

ありがとうございます!

編集: 明確にするために、私たちはすでに単一のテストランのjunitテスト結果を持っています。あなたは日食(輸出junitの結果)またはジェンキンからそれらを得ることができます。 Jenkinsでjunitテストスイートを実行することで、テストスイートのテスト失敗率を時間をかけて追跡することもできます。これは、時間の経過とともにいくつのテストが通過したかを追跡する素晴らしいチャートを示しています。各ゲンキンズのビルドでは、最後の実行と比較して、どのテストが合格したかを見ることができます。 もう少し必要です。特定のテストケースのパフォーマンス(継続時間)を、複数の実行にわたって、あるいは異なる環境でどのように異なったふうに振る舞うかを分析できるようにしたいと考えています。傾向を抽出する。いくつかのデータマイニングを行います。

+0

ユニットテストの履歴を記録しないでください。 ?あなたの質問は全く意味がありません。 Hudson(Jenkins)を含むほとんどすべてのCIサーバーは、Junit機能を公開しており、非常に優れたテストレポートを提供しています。 –

+0

私はこれについて私の質問を更新しました。 – nemoo

答えて

2

これは役に立ちますが、JUnitテストの出力のさまざまなタイプのリダイレクトを行うことができますし、テストレポートのフォーマットを指定することもできます。さらなる分析や統計的な目的のために、時間をかけてアクセスして維持することができます。

これはHTMLレポートを示唆し、実現することができる方法についての説明とガイドは、ここで見つけることができます:http://www.skill-guru.com/blog/2010/03/26/generating-junit-test-results-as-html-report/

私はそれが役に立てば幸い。

関連する問題