問題タブ [maven-surefire-plugin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - mavensurefireプラグイン-単一のテストを指定-は実行されません
このMavenプロファイルを設定しています。
プロファイルを実行すると、含まれているテストが実行されません!私は何が間違っているのですか?suitexmlfileで試してみましたが、クラスが見つからない場合に解析エラーが発生します。
unit-testing - maven-surefire-plugin によるプロジェクトのテストに問題がある
私は自分の Maven プロジェクトを Netbeans で書きました。自分のプロジェクト (dao、service..) のテストを書きました。すべてのテストは正しいですが、プロジェクトをビルドまたはテストすると、コンパイルするテストがないと maven に表示されます。maven-surefire-plugin を使用しているので、pom.xml に含めます。
私はsurefire-pluginに何か問題があると思います..
それは:
maven-3 - maven-surefire プラグインの「default-test」は何を表していますか
TestNgで確実に実行できるように、pomで次の構成を定義しました。
しかし、2 つの実行の前に常に「default-test」実行が行われ、@test アノテーションが付けられたすべてのメソッドが実行されるようです (少なくとも私はそう思います)。
たとえば、プロジェクトで「mvn test」を実行すると、2 つのテストが実行されます。「デフォルトテスト」と「単体テスト」。
誰かが私にこれをもう少し説明してもらえますか? これを無効にしたり、制御したりできますか (何をテストし、何をテストしないかを構成します)?
java - maven-surefire-plugin 優先順位を含める/除外する
maven-surefire-plugin を使用し、包含と除外の両方を使用する場合、それらはどの順序で処理されますか? さらに、3 セットのテストがある場合、最初のセットは基本セット、2 番目と 3 番目は特殊なケースですが、プロファイルを使用してさらに包含/除外できますか? プロファイルの包含/除外設定はどのようにマージされますか? たとえば、次のようなことをしたいと思います。
そして、次のように実行できるようにします。
また
また
- - アップデート - - -
を使用しmvn help:effective-pom -P [profileA]
て、単一のプロファイルを指定すると、結果として有効な pom が次のようになることがわかりました。
複数のプロファイルを指定すると、次のようになりますmvn help:effective-pom -P [profileA],[profileB]
。
最後に、属性combine.children="append"
を<includes>
プロファイル構成の要素に追加し、両方のプロファイルを指定すると、次のようになりますmvn help:effective-pom -P [profileA],[profileB]
。
しかし、各ファイルが と の両方として指定され<include>
た<exclude>
ので、どうなるでしょうか。
---- 更新 2 ----
この構成で実際にビルドを実行します。
TestAを実行しないため、 が を圧倒しているように見え<exclude>
ます<include>
。 完全を期すために、順序を逆にして<excludes>
前に置きまし<includes>
たが、動作は変わりませんでした。 この動作が概説されているソースコードのどこかで誰かが見つけることができれば、喜んで答えてくれるでしょう...
junit - 確実なレポートを2つ以上のカテゴリに分ける方法は?
テストを3つの異なるカテゴリに分けたい:
- 単位
- componnet
- システム
次に、それらを異なるフェーズで別々に実行し、これらのテストの実行結果を3つの異なる確実なレポートに表示します。または1つですが、テスト結果を3つの異なるカテゴリに分割します。
Mavenでそれを達成する方法は?
フェイルセーフMavenプラグインを使用してテストを個別に実行できることはわかっています。ですから問題ありません。
唯一の問題は、レポートを3つのカテゴリに分類できることです。
maven - maven-failsafe-plugin が統合テストを実行していません
私の実際のポンポンの一部を怒鳴りつけます。統合テストのテストには、@Test アノテーションで「統合」グループが割り当てられています。少しテストを行うために、テスト段階で「統合」グループを除外しませんでした。
たとえば mvn verify または mvn install を使用してビルドすると、統合テストはテスト フェーズで実行されますが、検証または統合テスト フェーズでは実行されません。実行されたテストの数は 0 のままです。どういうわけか、それらはピックアップされません。誰が何が間違っているのか考えていますか?
更新: TestNG を依存関係としてフェールセーフ プラグインに追加しても役に立たない
maven - Maven が統合テストを実行するタイミングを変更する
単体テスト (mockito) と統合テスト (メモリ内データベース) があります。「mvn install」の一部として統合テストを実行しないでください。基本的に、これはライフサイクルを再構成して、統合テストがインストールとデプロイの間に来るようにすることを意味すると思います。これは可能ですか?
この理由は、統合テストには多少時間がかかるため、開発者がインストールするたびに統合テストを実行したくないからです。しかし、たとえば、プロジェクトがリリースされる前にそれらを実行したいと考えています。
maven - テスト間で共有リソースを使用して Surefire を同時に実行する
多くの統合テストを含むプロジェクトがあり、テストの実行時間を短縮しようとしています。テストはすべて、DB 接続を使用する JUnit テストです。現在、すべてのテストは、キャッシュの問題を処理するために、テストごとに fork を使用して maven-surefire-plugin を使用して 1 つずつ実行されます (ここでのキャッシュは問題ではありません)。
すべてのテストは、同じ DB スキーマに永続化されるアプリを使用します。プロセスを並列化しようとすると、これは課題に直面します。
確実なhttp://incodewetrustinc.blogspot.com/2010/01/run-your-junit-tests-concurrently-with.htmlの並行性について少し説明している素敵なブログを見つけました が、このソリューションの実装にはまだ問題があります共有リソースがあります。
私の考えは、複数のスキーマを作成し、それらをスレッド\プロセス間で共有することでした。各テストに個別の接続を割り当て、衝突を回避するにはどうすればよいですか?
いくつかのアイデアを聞きたいです。
ありがとうイカ。
java - Maven -Dtest=* テスト、すべてのテストを実行していないようです
maven-surefireで実行されているSeleniumテストプロジェクトでセットアップされたJenkins CIサーバーがあります。プロジェクトをパラメーター化されたビルドにする必要があるため、パラメーターとして Dtest を使用して URL 経由でビルドをトリガーできます (そして、URL で指定したテストのみを実行します)。これはうまくいきます。
残念ながら、このパラメーター化された構成では、すべてのテストを実行する方法を理解できませんでした。パラメーター化されたビルド モードであるため、常に -Dtest パラメーターを指定する必要があります。
Surefire のドキュメントに基づいて、テスト名をワイルドカード化できるように思われ、すべてが実行されます。
これらのパラメーターを実行すると、奇妙な結果として、すべて6
のテストからの (私が作成した) print ステートメントが生成されます (テストがすべて開始されたことを示します)。
そして、4/6 テストのみの標準テスト結果 (以下)
要約が続きます:
それが重要な場合、テストはsurefireを使用して並行して実行されています。もう1つの奇妙なことは、個々のテスト結果を印刷しているときに、4番目の結果の後、5番目の結果が印刷を開始しますが、結果は表示されず、$ 1が含まれています最後に:
何か明確にしたり、質問に答えたりできることがあれば教えてください。
助けてくれてありがとう!
eclipse - Eclipse経由でJUnitテストを実行するときのMavenの確実な引数
Maven - Surefire - Eclipse - JUnit に関する初心者の質問
以下のように、いくつかの追加の JVM 引数を渡すように、プロジェクトの pom ファイルで maven-surefire-plugin を構成しました。
このプロジェクトのテスト ケースを Eclipse から Run As -> JUnit Test として実行すると、クラスパスが正しく設定されていても、argLine で指定された追加の引数が呼び出しに含まれません。関連する の下に引数を手動で入力する必要がありますDebug Configurations
。クラスパスにテストスコープのjarを配置する必要があることをJUnitがどのように認識しているか、EclipseのJUnitツールがM2E経由でMavenを認識していることを意味することをよく理解していませんか? もしそうなら、argLine も読み取れるようにするにはどうすればよいでしょうか。これは非常に具体的に聞こえると思いますが、他の人は同様の状況でどのように対処していますか?
前もって感謝します!