4

単体テスト プロジェクトのセット (顧客ごとに 1 つ)、顧客ごとの構成プロジェクトのセット、およびコア Java があります。単体テストは単なる JUnit テストであり、構成プロジェクトは顧客固有の xml ファイルなどであり、コア プロジェクトはランタイムです。したがって、単体テストでは、顧客ごとに特定の構成をテストしています。

したがって、私の単体テスト プロジェクトは、コアとそれに対応する単体テスト プロジェクトに依存します。すべて Maven2 の依存関係として。

今、私がやりたいことは、開発者が構成プロジェクトを更新して単体テスト プロジェクトを壊すと、ビルドが失敗することです。単体テストまたはコア プロジェクトが変更されていない場合でも。

ただし、Hudson では、コア プロジェクトと構成プロジェクトが単体テスト プロジェクトの上流にあることが登録されていますが、単体テスト プロジェクトにチェックインしたときに単体テストが失敗した場合にのみ、開発者に電子メールを送信するだけです。

「Blame Upstream Committers Plugin」と Email-Ext プラグインを使用して、コミッターと犯人をメールで送信するように設定してみました。しかし、理由がわかりませんが、これらのどれも機能しません。

私にできることの 1 つは、単体テスト プロジェクトと構成プロジェクトをマージすることです。これは、顧客の構成を分離することを望んでいるため、思い切った動きですが、可能です。しかし、上記が機能しない理由を知りたいです。

助けてくれたらありがとう、ジャスティン

4

2 に答える 2

1

Blame プラグインを試したときにフィンガープリントを有効にしましたか? (これを回答として投稿して申し訳ありませんが、まだコメントできません)

于 2011-03-18T06:20:47.327 に答える
0

私はこの同じ問題に苦しんでいます。プラグインのドキュメントによると、上流プロジェクトと下流プロジェクトの両方でフィンガープリントが有効になっていることを確認する必要があり、「hudson (jenkins) が上流ビルドからのものであると判断できる」ファイルをフィンガープリントする必要があります。これを行う最も簡単な方法は、上流のプロジェクトでビルドされたファイルのみをフィンガープリントすることです。

以前のビルドのアップストリーム プロジェクトが非難される (動作する場合) と報告している人が何人かいるので、ファイルはプロジェクト間で独自の方法 (つまり、ビルドごとに変更する) で変更する必要があると思います。

上記は、hudson.upstreamCulprits=true が有効になっているプラ​​グインまたは ext-mail プラグインのいずれかに当てはまります。

于 2011-05-19T23:07:22.650 に答える