2

Intellij のみを使用してビルド システムを管理することから、Intellij/Maven に移行しています。@RunWith(KmlParameterizedRunner.class) を介して独自のランナーで統合テスト「MapSimulationTest」を実行すると、Intellij が状況を正しく処理し、システム プロパティ「user.dir」で指定されたディレクトリで .kml ファイルがスキャンされ、それぞれがテストされます。

問題は、Surefire が @RunWith を無視することのようですが、何か提案はありますか?

ここにmavenログが示すものがあります...

-------------------------------------------------- ----- テスト -------------------------------------------- ----------- com.tqicorp.guru.MapSimulationTest テストの実行: 0、失敗: 0、エラー: 0、スキップ: 0、経過時間: 0.061 秒

4

4 に答える 4

2

Springテストランナーでsurefireと@RunWithを使用していますが、maven2.2.1では正常に動作しています。

問題を追跡するには、古いスタイルのtestXXXメソッドではなく、@Testアノテーションを使用して単純なJUnitテストを作成してみてください。「mvntest」を実行して、テストが実行されているかどうかを確認します。もしそうなら、それはあなたのパスに古いjunitの可能性を排除します。実行されていない場合は、「mvn site」を実行し、依存関係レポートでjunitを検索して、バージョンを確認します。不要なバージョンが簡単に侵入する可能性があるのは驚くべきことです。

于 2010-04-27T02:42:46.540 に答える
1

最新バージョンのmaven-surefire-pluginを使用していることを確認してみてください。私は過去に、これらのバグがプラグインの新しいバージョンで修正され、単に更新する必要があることを確認するまで surefireuasgeのバグに悩まされてきました。

于 2010-05-21T19:25:15.273 に答える
1

これは、TestNGに依存している場合に発生する可能性があります。依存関係を削除すると、Mavenはクラス内の@ org.junit.Testアノテーションを検索します。TestNG依存関係が存在する場合、Mavenは@org.testng.annotations.Testアノテーションを検索します。

于 2011-11-21T08:42:26.893 に答える
1

すでに実行している可能性がありますが、これらの注釈が尊重される junit 4.x ではなく、maven の依存関係が古い junit バージョン (3.x) を使用している場合に、これが発生する可能性があります。pom.xml をチェックして、適切な junit バージョンがアーティファクトであるかどうかを確認します

于 2010-04-27T00:26:43.377 に答える