Emma non la generazione di report, ma cobertura lo fa?
Domanda
ragione fondamentale per mettere la questione confronto tra questi 2 è che io sono in grado di generare i report in directory del sito (per cobertura
) dopo aver messo le seguenti plug-in informazioni nella sezione di generazione del mio pom. Ma lo stesso non avrebbe accadendo con emma
. Ho controllato la documentazione in codehause mojo la sua quasi uguale per entrambi. La mia configurazione è:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>emma-maven-plugin</artifactId>
<version>1.0-alpha-2</version>
<executions>
<execution>
<phase>process-classes</phase>
<goals>
<goal>emma</goal>
</goals>
</execution>
</executions>
</plugin>
ma dont generare report come previsto in directory del sito, ma posso vedere coverage.em generati e classi strumentati ogni volta. mi sto perdendo qualsiasi configurazione?
Soluzione 2
questo è davvero strano: corretto plug-intervento è: vedere la directory di output
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>emma-maven-plugin</artifactId>
<version>1.0-alpha-2</version>
<inherited>true</inherited>
<executions>
<execution>
<id>emma</id>
<phase>process-classes</phase>
<goals>
<goal>emma</goal>
</goals>
</execution>
</executions>
<configuration>
<outputDirectory>${project.build.directory}</outputDirectory>
</configuration>
</plugin>
emma anche non accetta $ {} project.build.directory / emma.
conclusione: emma non ha generato i rapporti quando si aggiunge qualsiasi sub-directory a $ {} project.build.directory esempio $ {} Project.build.directory / emma-reports.
Altri suggerimenti
Non riesco a riprodurre il problema. Ho copiato e incollato il vostro frammento di configurazione in un pom.xml
casuale e l'esecuzione di qualsiasi fase posteriore al process-classes
trigger emma:emma
e la relazione di copertura viene generato come previsto:
$ mvn clean process-classes [INFO] Scanning for projects... [INFO] ------------------------------------------------------------------------ [INFO] Building Test Project [INFO] task-segment: [clean, process-classes] [INFO] ------------------------------------------------------------------------ [INFO] [clean:clean {execution: default-clean}] [INFO] Deleting directory /home/pascal/tmp/test-project/target [INFO] [resources:resources {execution: default-resources}] [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 1 resource [INFO] [compiler:compile {execution: default-compile}] [INFO] Compiling 1 source file to /home/pascal/tmp/test-project/target/classes [INFO] Preparing emma:emma ... EMMA: runtime coverage data merged into [/home/pascal/tmp/test-project/coverage.ec] {in 93 ms} [INFO] [emma:emma {execution: default}] processing input files ... 2 file(s) read and merged in 3 ms writing [xml] report to [/home/pascal/tmp/test-project/target/site/emma/coverage.xml] ... writing [html] report to [/home/pascal/tmp/test-project/target/site/emma/index.html] ... [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESSFUL [INFO] ------------------------------------------------------------------------
Avete unit test nel progetto? È il file coverage.em
non vuoto? Che cosa succede se si esegue emma:emma
sulla riga di comando? Ha mvn in esecuzione con l'opzione -X
ti danno alcun suggerimento? Puoi pubblicare alcune tracce che sarebbe utile?
Come nota a margine, non correrebbe emma:emma
come parte della costruzione regolare personalmente. Mi sia eseguito l'obiettivo emma:emma
dalla riga di comando o configurare il plugin e la sezione di report come suggerito nella pagina utilizzo . Ma questa è un'altra storia e non risponde alla domanda.