Domanda

Voglio usare testng con plug-in Surefire di Maven . L'idea è di codificare alcuni test con un gruppo integrationTest ed eseguire il plug-in due volte: per l'obiettivo test escludendo il gruppo integration-test e per l'obiettivo pom.xml includendo solo il gruppo mvn integration-test.

Ho trovato del materiale per l'esecuzione del plug-in per entrambi obiettivi e funziona, ma il gruppo per la seconda manche non funziona (non viene eseguito alcun test).

Ecco la configurazione del plug-in nell'elemento build del mio mvn test:

  <plugin>
    <artifactId>maven-surefire-plugin</artifactId>
    <configuration>
      <excludedGroups>integrationTest</excludedGroups>
      <reportFormat>brief</reportFormat>
      <trimStackTrace>true</trimStackTrace>
      <useFile>false</useFile>
    </configuration>
    <executions>
      <execution>
        <id>integration-test</id>
        <phase>integration-test</phase>
        <goals>
          <goal>test</goal>
        </goals>
        <configuration>
          <groups>integrationTest</groups>
          <excludedGroups/>
          <reportsDirectory>${project.build.directory}/surefire-reports/integration</reportsDirectory>
        </configuration>
      </execution>
    </executions>
  </plugin>

Qualche idea? <=> esegue tutti i test unitari come previsto (escluso il gruppo <=>) ma il secondo test esegue solo:

  

Esecuzione di TestSuite
  Test eseguiti: 0, Errori: 0, Errori: 0, Ignorato: 0, Tempo trascorso: 0,562 sec

Il risultato di <=> è come previsto, i test eseguiti e il gruppo <=> vengono ignorati.

È stato utile?

Soluzione

L'ho preso - un'implementazione di configurazione irritante!

<excludedGroups/> non sovrascrive <excludedGroups>integrationTest</excludedGroups>. Devi invece specificare qualsiasi gruppo (sconosciuto), ad esempio <excludedGroups>none</excludedGroups>.

Altri suggerimenti

Il Plug-in Failsafe è il modo migliore per farlo (potrebbe non essere stato disponibile quando hai pubblicato questa domanda). Aggiunge una fase di test di integrazione al ciclo di vita della build. Ti consente di eseguire le attività di installazione e smontaggio prima e dopo i test, utile ad esempio per la gestione di un contenitore incorporato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top