11

私の会社は最近Mavenに切り替えており、移行は非常にスムーズでしたが、これが私を悩ませているものが1つあります。そのため、以前は、Maven以前の時代に、現在実行されているクラスがどのテストであるかを確認できました(1つのクラスに40の単体テストがあり、2番目のテストが失敗した場合はそれが表示されます)。これで、次のようになります。テストされたクラスの名前が表示され、それが表示されます。実際に結果を確認するには、クラスですべてのテストが完了するまで待つ必要があります(テストを停止すると、停止した時点までの進行状況が表示されますが、実際に停止する前に何も表示されません)。これは、一部の統合テストでは本当に面倒で時間がかかります。

誰かがこれの解決策を知っているなら、私は感謝するでしょう。前もって感謝します。

4

2 に答える 2

8

現在実行中のテストをコンソールに出力するリスナーを構成できます。junitmaven-surefire-pluginのドキュメントまたはtestngmaven -surefire-pluginのドキュメントのセクションUsing custom listeners and reportersを参照してください

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.19.1</version>
    <configuration>
      <properties>
        <property>
          <name>listener</name>
          <value>com.mycompany.MyResultListener,com.mycompany.MyResultListener2</value>
        </property>
      </properties>
    </configuration>
  </plugin>
于 2013-03-05T08:22:12.227 に答える
1

JUnitを使用する場合は、これにを使用できます@Rule

Mavenがテストを実行するときにのみ適用する場合は、Systemプロパティを使用して出力を有効/無効にします。

于 2013-03-05T08:24:37.293 に答える