問題タブ [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.

0 投票する
3 に答える
22993 参照

maven - testng と maven を使用してさまざまなテスト スイートを実行する

TestNg と Maven を Surefire プラグインと共に使用して、テストを実行しています。同じ pom を使用して異なる時間に実行できるようにしたいいくつかの異なるコンポーネントがあります。現在、これを行うために、テストスイートを定義するいくつかの異なる XML ファイルがあり、pom をセットアップしているので、 mvn test -Dtestfile=/path を実行して代わりにそのスイートを使用できます。

XML ファイルを 1 つのファイルに結合し、テスト名または他のシステムからベースを選択する方法があるかどうか疑問に思っていましたか?

編集: 私はすべてのテストを Smoke、Sanity、Regression で定義しており、特定のコンポーネントに対してすべての Regressions を実行できるようにしたいと考えています。TestNG CLI を実行すると、-testnames comp1、comp2、comp3 などを指定できます。各コンポーネントは、複数のテストを含む 1 つの xml スイートで定義されます ()。exec:java プラグインを使用する以外に、maven でこれを行う方法があるかどうか疑問に思っていました。

0 投票する
0 に答える
278 参照

java - ソースコードの失敗行へのsurefire-reportリンクを作成する方法

生成された確実なレポートを、エラーが発生したソース コードの行にリンクしようとしています。ここのプラグインのドキュメントに記載されているすべてに従っています。

正しいソース ファイルにリンクしていますが、行番号にはリンクしていません。

このようにする必要があります

行番号付きのサンプル画像

しかし、代わりにこのようなものです

行番号なしで生成された確実なレポート

0 投票する
1 に答える
297 参照

m2eclipse - m2eclipseで空のmvnプロパティを設定するにはどうすればよいですか?

eclipse/m2eclipse で mvn 実行構成を作成したい。次の mvn コマンドを模倣したい:

ただし、構成にパラメーターを追加するときは、キー「maven.surefire.debug」の値を指定する必要があります。

回避策はありますか?

0 投票する
1 に答える
3138 参照

java - maven-surefire-pluginをEclipseのTestNGで動作させる方法

私はこれらの2つを日食で一緒に機能させることはできません

このようにsurefireプラグインを設定できます

実行する$mvn testと、すべてのリソースがコンパイルされてに移動され/target/test-classesます。これは正常に機能します。

しかし、実行$mvn cleanしてからTestNGビューを使用していくつかのテストを実行すると、何もコンパイルされない/target/test-classesため、その前にテストフェーズを実行するか、何らかの方法でmaven-compiler-plugin:testCompileテストリソースをコンパイルするという目標を採用する必要があります...

ただしmaven-compiler-plugin:2.3.2:testCompile、構成を介してsurefireプラグインのようにセットアップされていませんtestResources。テストソースコードをテストクラスにコンパイルするだけです

surefireプラグインを実行するかのようにtestNGを実行するにはどうすればよいですか?私はどういうわけかから生じる効果が必要です<testResources>

0 投票する
2 に答える
5379 参照

maven-2 - Surefire Mavenプラグインからguicified TestNGテストにパラメータを渡す方法は?

Maven + Surefire + TestNG + Guice (最新の安定版) を使用しています

Guice を実行する必要がある「大規模な」テストがあります。基本的に私はこのようにしています:

問題は、FooPortにハードコードされていること5000です。これは Maven プロパティであるため、最初の試みは次の Surefire 構成を使用することでした。

そして、その後、それは好きSystem.getProperty("fooPort")です。残念ながら、ドキュメントによると、これは JUnit テスト専用です。少なくとも、テストのデバッグ中にこのシステム変数を確認できませんでした。forkModeデフォルトのものと の両方を試しましneverたが、何も変わりません。TestNG テストでは、次のようにすることをお勧めします。

しかし、今は Guice からこのプロパティを使用する必要があるため、何らかの方法で GuiceModule に指定する必要があります。次の方法で試してみました。

ただし、この方法も失敗でした。作成者は考慮されず、ファクトリのインスタンスを作成できませんでしたmodulefactories@Parameters

からデータを取得しようとする必要があるように見えITestContext contextますが、データがそこにあるかどうか、または必要なことを行うためのより簡単な方法があるかどうかはわかりません。

返信ありがとうございます。

0 投票する
3 に答える
4267 参照

java - Classオブジェクトの他に、Perm Gen Space(sun 1.6 VM)に格納されているものは何ですか?

〜300のJUnitテストを実行し、Springコンテキストを使用しているときに、「java.lang.OutOfMemoryError:PermGenspace」が表示されます。それ以来、PermGenを食いつぶしているものを理解するのに苦労しています:

  • 定常状態では、アプリは約90mのpermgenスペースを消費します
  • 私はユニットテストのために-XX:MaxPermSize=256mを試しました-まだ不足しています
  • 有効にする-XX:+TraceClassLoading-XX:+TraceClassUnloading、の前の最後の20〜30のテストを実行しているときに、追加の「読み込み」イベントが表示されませんOutOfMemoryError

後者は、Classオブジェクト以外の何かがPermGenを埋めていることを示唆しているようです。もしそうなら、それは何でしょうか?たとえば、クラスインスタンスがPermGenに保存される状況はありますか?

これが私のVM情報です:

関連している

FWIW、この投稿を引き起こした私の問題の根本はやや些細なことであることが判明しました:Maven SurefireプラグインがVMをフォークするときにMAVEN_OPTS(またはmvnを実行するVMインスタンス)からVM設定を継承すると仮定しました-それは(ブーイング)しません。プラグインの構成でargLineを使用して明示的に指定する必要があります。HTH。

0 投票する
1 に答える
1924 参照

maven-3 - Maven テストが完了しない

mvn テストを実行すると、Maven はすべてのテストを正常に実行し、待機無限ループに入ります。タスク マネージャーに Java プロセスが表示されます。Maven がこのエラー メッセージで戻る前に、それを強制終了する必要があります。

テストの実行: 3、失敗: 0、エラー: 0、スキップ: 0

どんな助けでも感謝します。

ありがとう

R

C:\Users\Raghuveer.Rao>jstack 7256 2011-06-17 15:24:55 Full thread dump Java HotSpot(TM) Client VM (20.0-b11 mixed mode, sharing):

"Thread-2" prio=6 tid=0x03ed3000 nid=0x14d0 waiting for monitor entry [0x04ddf00 0] java.lang.Thread.State: BLOCKED (on object monitor) at org.hsqldb.Session.close(Unknown Source) - waiting to lock <0x23ba76f0> (a org.hsqldb.Session) at org.hsqldb.SessionManager.closeAllSessions(Unknown Source) - locked <0x292ce828> (a org.hsqldb.SessionManager) at org.hsqldb.Database.close(Unknown Source) at org.hsqldb.StatementCommand.getResult(Unknown Source) at org.hsqldb.StatementCommand.execute(Unknown Source) at org.hsqldb.Session.executeCompiledStatement(Unknown Source) at org.hsqldb.Session.executeDirectStatement(Unknown Source) at org.hsqldb.Session.execute(Unknown Source) - locked <0x23b8efe8> (a org.hsqldb.Session) at org.hsqldb.jdbc.JDBCStatement.fetchResult(Unknown Source) at org.hsqldb.jdbc.JDBCStatement.execute(Unknown Source) - locked <0x23b90f30> (a org.hsqldb.jdbc.JDBCStatement) at org.springframework.jdbc.datasource.embedded.AbstractEmbeddedDatabase Configurer.shutdown(AbstractEmbeddedDatabaseConfigurer.java:42) at org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactory. shutdownDatabase(EmbeddedDatabaseFactory.java:184) at org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactoryB ean.destroy(EmbeddedDatabaseFactoryBean.java:57) at org.springframework.beans.factory.support.DisposableBeanAdapter.destr oy(DisposableBeanAdapter.java:184) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroyBean(DefaultSingletonBeanRegistry.java:487) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroySingleton(DefaultSingletonBeanRegistry.java:463) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroySingletons(DefaultSingletonBeanRegistry.java:431) - locked <0x2951f1c0> (a java.util.LinkedHashMap) at org.springframework.context.support.AbstractApplicationContext.destro yBeans(AbstractApplicationContext.java:1048) at org.springframework.context.support.AbstractApplicationContext.doClos e(AbstractApplicationContext.java:1022) at org.springframework.context.support.AbstractApplicationContext$3.run( AbstractApplicationContext.java:940)

"Thread-1" prio=6 tid=0x03ed2c00 nid=0x1fe0 waiting for monitor entry [0x04d8f00 0] java.lang.Thread.State: BLOCKED (on object monitor) at org.hsqldb.SessionManager.closeAllSessions(Unknown Source) - waiting to lock <0x292ce828> (a org.hsqldb.SessionManager) at org.hsqldb.Database.close(Unknown Source) at org.hsqldb.StatementCommand.getResult(Unknown Source) at org.hsqldb.StatementCommand.execute(Unknown Source) at org.hsqldb.Session.executeCompiledStatement(Unknown Source) at org.hsqldb.Session.executeDirectStatement(Unknown Source) at org.hsqldb.Session.execute(Unknown Source) - locked <0x23ba76f0> (a org.hsqldb.Session) at org.hsqldb.jdbc.JDBCStatement.fetchResult(Unknown Source) at org.hsqldb.jdbc.JDBCStatement.execute(Unknown Source) - locked <0x23ba9568> (a org.hsqldb.jdbc.JDBCStatement) at org.springframework.jdbc.datasource.embedded.AbstractEmbeddedDatabase Configurer.shutdown(AbstractEmbeddedDatabaseConfigurer.java:42) at org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactory. shutdownDatabase(EmbeddedDatabaseFactory.java:184) at org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactoryB ean.destroy(EmbeddedDatabaseFactoryBean.java:57) at org.springframework.beans.factory.support.DisposableBeanAdapter.destr oy(DisposableBeanAdapter.java:184) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroyBean(DefaultSingletonBeanRegistry.java:487) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroySingleton(DefaultSingletonBeanRegistry.java:463) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroySingletons(DefaultSingletonBeanRegistry.java:431) - locked <0x2910d510> (a java.util.LinkedHashMap) at org.springframework.context.support.AbstractApplicationContext.destro yBeans(AbstractApplicationContext.java:1048) at org.springframework.context.support.AbstractApplicationContext.doClos e(AbstractApplicationContext.java:1022) at org.springframework.context.support.AbstractApplicationContext$3.run( AbstractApplicationContext.java:940)

"Low Memory Detector" daemon prio=6 tid=0x01bdac00 nid=0x1eb0 runnable [0x000000 00] java.lang.Thread.State: RUNNABLE

"C1 CompilerThread0" daemon prio=10 tid=0x01bc8400 nid=0x18e8 waiting on conditi on [0x00000000] java.lang.Thread.State: RUNNABLE

"Attach Listener" daemon prio=10 tid=0x01bc5400 nid=0x1ac0 waiting on condition [0x00000000] java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=10 tid=0x01bc2400 nid=0x1fbc runnable [0x0000000 0] java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=8 tid=0x01bbb800 nid=0x1c00 in Object.wait() [0x03cdf000 ] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x290702b0> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118) - locked <0x290702b0> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x01bba000 nid=0x810 in Object.wait() [0x 03c8f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x29070340> (a java.lang.ref.Reference$Lock) at java.lang.Object.wait(Object.java:485) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116) - locked <0x29070340> (a java.lang.ref.Reference$Lock)

"main" prio=6 tid=0x00e29800 nid=0x1e20 in Object.wait() [0x001bf000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x294c4300> (a org.springframework.context.support.Abstrac tApplicationContext$3) at java.lang.Thread.join(Thread.java:1186) - locked <0x294c4300> (a org.springframework.context.support.AbstractApp licationContext$3) at java.lang.Thread.join(Thread.java:1239) at java.lang.ApplicationShutdownHooks.runHooks(ApplicationShutdownHooks. java:79) at java.lang.ApplicationShutdownHooks$1.run(ApplicationShutdownHooks.jav a:24) at java.lang.Shutdown.runHooks(Shutdown.java:79) at java.lang.Shutdown.sequence(Shutdown.java:123) at java.lang.Shutdown.exit(Shutdown.java:168) - locked <0x38b53ef8> (a java.lang.Class for java.lang.Shutdown) at java.lang.Runtime.exit(Runtime.java:90) at java.lang.System.exit(System.java:904) at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.j ava:986)

"VM Thread" prio=10 tid=0x01b7e400 nid=0x1e10 runnable

"VM Periodic Task Thread" prio=10 tid=0x01bec800 nid=0x1bac waiting on condition

JNI global references: 1776

Found one Java-level deadlock:

"Thread-2": waiting to lock monitor 0x0467c1cc (object 0x23ba76f0, a org.hsqldb.Session), which is held by "Thread-1" "Thread-1": waiting to lock monitor 0x01bbf56c (object 0x292ce828, a org.hsqldb.SessionMan ager), which is held by "Thread-2"

Java stack information for the threads listed above:

"Thread-2": at org.hsqldb.Session.close(Unknown Source) - waiting to lock <0x23ba76f0> (a org.hsqldb.Session) at org.hsqldb.SessionManager.closeAllSessions(Unknown Source) - locked <0x292ce828> (a org.hsqldb.SessionManager) at org.hsqldb.Database.close(Unknown Source) at org.hsqldb.StatementCommand.getResult(Unknown Source) at org.hsqldb.StatementCommand.execute(Unknown Source) at org.hsqldb.Session.executeCompiledStatement(Unknown Source) at org.hsqldb.Session.executeDirectStatement(Unknown Source) at org.hsqldb.Session.execute(Unknown Source) - locked <0x23b8efe8> (a org.hsqldb.Session) at org.hsqldb.jdbc.JDBCStatement.fetchResult(Unknown Source) at org.hsqldb.jdbc.JDBCStatement.execute(Unknown Source) - locked <0x23b90f30> (a org.hsqldb.jdbc.JDBCStatement) at org.springframework.jdbc.datasource.embedded.AbstractEmbeddedDatabase Configurer.shutdown(AbstractEmbeddedDatabaseConfigurer.java:42) at org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactory. shutdownDatabase(EmbeddedDatabaseFactory.java:184) at org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactoryB ean.destroy(EmbeddedDatabaseFactoryBean.java:57) at org.springframework.beans.factory.support.DisposableBeanAdapter.destr oy(DisposableBeanAdapter.java:184) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroyBean(DefaultSingletonBeanRegistry.java:487) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroySingleton(DefaultSingletonBeanRegistry.java:463) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroySingletons(DefaultSingletonBeanRegistry.java:431) - locked <0x2951f1c0> (a java.util.LinkedHashMap) at org.springframework.context.support.AbstractApplicationContext.destro yBeans(AbstractApplicationContext.java:1048) at org.springframework.context.support.AbstractApplicationContext.doClos e(AbstractApplicationContext.java:1022) at org.springframework.context.support.AbstractApplicationContext$3.run( AbstractApplicationContext.java:940) "Thread-1": at org.hsqldb.SessionManager.closeAllSessions(Unknown Source) - waiting to lock <0x292ce828> (a org.hsqldb.SessionManager) at org.hsqldb.Database.close(Unknown Source) at org.hsqldb.StatementCommand.getResult(Unknown Source) at org.hsqldb.StatementCommand.execute(Unknown Source) at org.hsqldb.Session.executeCompiledStatement(Unknown Source) at org.hsqldb.Session.executeDirectStatement(Unknown Source) at org.hsqldb.Session.execute(Unknown Source) - locked <0x23ba76f0> (a org.hsqldb.Session) at org.hsqldb.jdbc.JDBCStatement.fetchResult(Unknown Source) at org.hsqldb.jdbc.JDBCStatement.execute(Unknown Source) - locked <0x23ba9568> (a org.hsqldb.jdbc.JDBCStatement) at org.springframework.jdbc.datasource.embedded.AbstractEmbeddedDatabase Configurer.shutdown(AbstractEmbeddedDatabaseConfigurer.java:42) at org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactory. shutdownDatabase(EmbeddedDatabaseFactory.java:184) at org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactoryB ean.destroy(EmbeddedDatabaseFactoryBean.java:57) at org.springframework.beans.factory.support.DisposableBeanAdapter.destr oy(DisposableBeanAdapter.java:184) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroyBean(DefaultSingletonBeanRegistry.java:487) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroySingleton(DefaultSingletonBeanRegistry.java:463) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.destroySingletons(DefaultSingletonBeanRegistry.java:431) - locked <0x2910d510> (a java.util.LinkedHashMap) at org.springframework.context.support.AbstractApplicationContext.destro yBeans(AbstractApplicationContext.java:1048) at org.springframework.context.support.AbstractApplicationContext.doClos e(AbstractApplicationContext.java:1022) at org.springframework.context.support.AbstractApplicationContext$3.run( AbstractApplicationContext.java:940)

Found 1 deadlock.

C:\Users\Raghuveer.Rao>

0 投票する
3 に答える
5664 参照

java - Maven テスト レポート形式

テストを実行すると Java/Groovy Maven プロジェクトでは、テスト レポートは に保存されtarget/surefire-reportsます。実行されるテスト クラスごとに、そのクラスの出力.txt.xml示すファイルが作成されます。

全体として、これは非常に役に立たない形式です。どのテストが失敗したか、およびそれらが生成した出力をすばやく確認する簡単な方法が提供されていないからです。Grails のテスト レポートに似たものが欲しいです。レポート形式をより使いやすいものに変更する簡単な方法はありますか?

理想的には、 を実行したときにこのレポートが生成されるようにしたいと考えていますmvn test。つまり、レポートを生成するために実行する必要はありませんmvn site

0 投票する
7 に答える
67452 参照

maven - 単体テストは禁止するが、Maven での統合テストは許可する

SureFire プラグインを使用していくつかの単体テストを実行し、FailSafe プラグインを使用していくつかの統合テストを実行する Maven ビルドがあります。FailSafe プラグインのテストだけを実行する方法が必要です。

これはマルチモジュール ビルドであり、すべてのモジュールの pom を編集する必要がないため、pom にさまざまなプロファイルや何かを追加するのは良い解決策ではありません。

すべてのテストを停止するskip.testsおよびmaven.test.skipと、フェールセーフ プラグインのみを停止する があります。skipTestsskipITs

それで、MavenのようなコマンドラインフラグはありskipITsますが、代わりに「onlyITs」の機能がありますか?

0 投票する
1 に答える
241 参照

java - 確実なレポートの maven プラグインによって生成された HTML を変更できますか?

追加の HTML または JavaScript を含めるために、surefire-reports maven プラグを変更する方法はありますか?