0

私はEclipseプラグインを開発しており、Mavenを使用してソース構造を調整しています。プラグインをコンパイルするために、Mavenのtycho拡張機能を使用します。しかし、私はどのように団結を実行するのか疑問に思いました。

ソースコードの品質管理にソナーサーバーを追加で使用しているので、テストにはsurefireプラグインを使用したいと思います。パッケージターゲットとしてeclipse-test-pluginを使用すると、Unitestが適用されます。ただし、unitestを適用するためにデフォルトのsurefireプラグインを利用したいと思います。

これで、unittestパッケージを含むsrc / test / javaが正しく読み取られてコンパイルされたが、間違った出力フォルダーに書き込まれたことがわかりました。target/test-classesでテストを行う必要があります。ただし、それらはターゲット/クラスにコンパイルされます。

私はEclipseプラグインの開発とMavenを初めて使用するため、テストを正しい出力フォルダーに書き込む方法を見つけることができませんでした。eclipse-pluginプロジェクトのbuild.propertiesを追加および変更してみました。プラグインプロジェクトではなく、tychoを使用しない他のプロジェクトでも問題なく機能します。

助けていただければ幸いです。

よろしく、フロリアン

4

1 に答える 1

1

標準のMavenプロジェクトとは異なり、Eclipseプラグイン/ OSGiバンドルの規則では、テストを別々のプロジェクトに常駐させます。これは、OSGiにはMaven依存関係スコープの「テスト」などがないためです。したがって、テスト対象のコードと同じプロジェクト内にテストを保持すると、テストコード/依存関係を生産的なコード/依存関係と混同する必要があります。

おっしゃるように、Tychoは、専用のテストプラグイン/フラグメントに使用する必要がある別のMavenパッケージタイプ「eclipse-test-plugin」を提供しています。https://docs.sonatype.org/display/TYCHO/PackagingTypesを参照してください

Tychoでは、同じプロジェクトにあるプレーンな単体テストはサポートされていません。

于 2011-01-10T09:43:21.447 に答える