> -----Original Message----- > From: Robert Patrick [mailto:robert.patr...@oracle.com] > Sent: Wednesday, October 25, 2017 11:32 AM > To: Maven Users List <users@maven.apache.org> > Subject: RE: IT test in src/test/java is not executed by > failsafe:integration-test, or fails oddly with verify > > In our integration tests' parent POM, we configured the compiler plugin > to run the test-compile goal:
Thanks for showing how you've configured these plugins, but what in this is intended to address the issues that I described? > <plugin> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-compiler-plugin</artifactId> > <executions> > <execution> > <id>test-compile</id> > <phase>test-compile</phase> > <goals> > <goal>testCompile</goal> > </goals> > <configuration> > </configuration> > </execution> > </executions> > </plugin> > > And the failsafe-plugin like this: > > <plugin> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-failsafe-plugin</artifactId> > <executions> > <execution> > <id>system-integration-test</id> > <phase>integration-test</phase> > <goals> > <goal>integration-test</goal> > </goals> > <configuration> > <argLine>-Xmx2048m -XX:PermSize=128m - > XX:MaxPermSize=256m</argLine> > <environmentVariables> > > <BUILD_DIR>${project.build.directory}</BUILD_DIR> > <A2C_HOME>${a2c-home}</A2C_HOME> > </environmentVariables> > <systemProperties> > <property> > <name>java.io.tmpdir</name> > > <value>${project.build.directory}</value> > </property> > </systemProperties> > </configuration> > </execution> > <execution> > <id>system-test-verify</id> > <phase>verify</phase> > <goals> > <goal>verify</goal> > </goals> > </execution> > </executions> > </plugin> > > In each test submodule POM, we simply add the following: > > <plugin> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-compiler-plugin</artifactId> > </plugin> > <plugin> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-failsafe-plugin</artifactId> > </plugin> > > > -----Original Message----- > From: KARR, DAVID [mailto:dk0...@att.com] > Sent: Wednesday, October 25, 2017 12:56 PM > To: users@maven.apache.org > Subject: IT test in src/test/java is not executed by > failsafe:integration-test, or fails oddly with verify > > I work on a large multiproject build that mostly produces OSGi bundle > artifacts. The codebase has a lot of unit tests that work fine from the > build. > > We also have quite a few IT tests, but we only execute those from > Eclipse, as the nature of the framework makes those tests unreliable. > > I now want to write a small test of IT tests that WILL be run from > maven, in a CI build. I verified that the test behaves properly when > run from Eclipse. > > I put the test in "src/test/java", named it with the "*IT.java" pattern, > and then tried to run "failsafe:integration-test". It ran failsafe, but > it didn't find any tests. > > So, on advice from someone on StackOverflow, I added an "executions" > block to the plugin declaration. Adding "integration-test" to the goals > list didn't make any difference, but when I added "verify" and then ran > that goal from the command line, I got very odd results. > > The following is an elided version of the pom: > > <?xml version="1.0"?> > <projectxsi:schemaLocation="http://maven.apache.org/POM/4.0.0http:/ > /maven.apache.org/xsd/maven- > 4.0.0.xsd"xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www > .w3.org/2001/XMLSchema-instance"> > <modelVersion>4.0.0</modelVersion> > <parent> > ... > </parent> > <artifactId>usl-features-install</artifactId> > <name>usl-features-install</name> > <url>https://urldefense.proofpoint.com/v2/url?u=http- > 3A__maven.apache.org&d=DwIFAg&c=RoP1YumCXCgaWHvlZYR8PQcxBKCX5YTpkKY057Sb > K10&r=Ql5uwmbofQMW0iErugdCnFgO- > CBGr_pt_OzwdxJosG0&m=Gdqqce41TF232jlBHJhZ-SIZC-k- > d9PREKAleK9pw0E&s=qa36PW3OrelDpW11bDjEo6LjewMSAUzW7lmp0RUt2OE&e= </url> > <packaging>bundle</packaging> > <properties> > <project.build.sourceEncoding>UTF- > 8</project.build.sourceEncoding> > </properties> > <build> > <plugins> > <plugin> > > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-failsafe- > plugin</artifactId> > <version>2.20.1</version> > <executions> > <execution> > <goals> > > <goal>verify</goal> > > <goal>integration-test</goal> > </goals> > </execution> > </executions> > </plugin> > <plugin> > <groupId>org.apache.felix</groupId> > > <artifactId>maven-bundle-plugin</artifactId> > </plugin> > <plugin> > <groupId>org.codehaus.mojo</groupId> > <artifactId>build-helper-maven- > plugin</artifactId> > <executions> > <execution> > > <id>attach-artifacts</id> > <phase>package</phase> > <goals> > > <goal>attach-artifact</goal> > </goals> > <configuration> > <artifacts> > ... > </artifacts> > </configuration> > </execution> > </executions> > </plugin> > </plugins> > </build> > </project> > > When I run "mvn failsafe:integration-test", I see the following: > > [INFO] ------------------------------------------------------------- > ----------- > [INFO] Building usl-features-install 3.1.0-SNAPSHOT > [INFO] ------------------------------------------------------------ > ------------ > [INFO] > [INFO] --- maven-failsafe-plugin:2.20.1:integration-test (default- > cli) @ usl-features-install --- > [INFO] > [INFO] ------------------------------------------------------- > [INFO] T E S T S > [INFO] ------------------------------------------------------- > [INFO] > [INFO] Results: > [INFO] > [INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0 > [INFO] > [INFO] ------------------------------------------------------------ > ------------ > [INFO] BUILD SUCCESS > [INFO] ------------------------------------------------------------ > ------------ > > Running "mvn verify" did the following: > > [INFO] --- maven-failsafe-plugin:2.20.1:integration-test (default) @ > usl-features-install --- > [INFO] > [INFO] ------------------------------------------------------- > [INFO] T E S T S > [INFO] ------------------------------------------------------- > [INFO] > [INFO] Results: > [INFO] > [INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0 > [INFO] > [INFO] > [INFO] --- maven-failsafe-plugin:2.20.1:verify (default) @ usl- > features-install --- > [INFO] ------------------------------------------------------------ > ------------ > [INFO] BUILD FAILURE > [INFO] ------------------------------------------------------------ > ------------ > [INFO] Total time: 5.968 s > [INFO] Finished at: 2017-10-25T10:41:26-07:00 > [INFO] Final Memory: 35M/498M > [INFO] ------------------------------------------------------------ > ------------ > [ERROR] Failed to execute goal org.apache.maven.plugins:maven- > failsafe-plugin:2.20.1:verify (default) on project usl-features-install: > There are test failures. > [ERROR] > [ERROR] Please refer to C:\users\<myuid>\git\oce_usl\usl- > parent\usl-features-install\target\failsafe-reports for the individual > test results. > [ERROR] Please refer to dump files (if any exist) [date]- > jvmRun[N].dump, [date].dumpstream and [date]-jvmRun[N].dumpstream. > [ERROR] > org.apache.maven.surefire.booter.SurefireBooterForkException: There was > an error in the forked process > > Notice that it reports on failsafe twice. The first time still doing > nothing, and the second one failing. > > The mentioned "dump file" had the following stacktrace, confusing the > matter even more: > > java.lang.NoSuchMethodError: > org.apache.maven.surefire.report.RunListener.testSetStarting(Lorg/apache > /maven/surefire/report/ReportEntry;)V > at > org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Pro > vider.java:235) > at > org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.ja > va:161) > at > org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassL > oader(ForkedBooter.java:373) > at > org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedB > ooter.java:334) > at > org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java: > 119) > at > org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:407 > ) > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > For additional commands, e-mail: users-h...@maven.apache.org > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > For additional commands, e-mail: users-h...@maven.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org