我正在使用 jacoco-maven-plugin (0.7.8) 的最新版本和 arquillian-jacoco (1.0.0.Alpha9) 的最新版本,但是在执行 IT 测试时,我在 BeforeClass Arquillian 中有一个 stackOverFlowError(我使用的是 maven,testNG 、wildfly、jacoco、arquillian 都在最新的库中):
Tests run: 12, Failures: 1, Errors: 0, Skipped: 11, Time elapsed: 54.616 sec <<< FAILURE! - in com.real.hr.services.impl.test.PayEseConnectorServiceImplIT
arquillianBeforeClass(com.real.hr.services.impl.test.PayEseConnectorServiceImplIT) Time elapsed: 54.263 sec <<< FAILURE!
org.jboss.arquillian.container.spi.client.container.DeploymentException: Cannot deploy: arquillian-RflowHR.war
Caused by: java.lang.Exception:
"WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"arquillian-RflowHR.war\".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"arquillian-RflowHR.war\".INSTALL: WFLYSRV0153: Failed to process phase INSTALL of deployment \"arquillian-RflowHR.war\"
Caused by: java.lang.StackOverflowError"
失败的测试:PayEseConnectorServiceImplIT>Arquillian.arquillianBeforeClass:109 » 部署
当我评论时:
<dependency>
<groupId>org.jboss.arquillian.extension</groupId>
<artifactId>arquillian-jacoco</artifactId>
<version>1.0.0.Alpha9</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jacoco</groupId>
<artifactId>org.jacoco.core</artifactId>
<version>0.7.8</version>
<scope>test</scope>
</dependency>
它工作正常,但我的配置下面没有包含集成测试:
<!-- jacoco -->
<dependency>
<groupId>org.jboss.arquillian.extension</groupId>
<artifactId>arquillian-jacoco</artifactId>
<version>1.0.0.Alpha9</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jacoco</groupId>
<artifactId>org.jacoco.core</artifactId>
<version>0.7.8</version>
<scope>test</scope>
</dependency>
</dependencies>
<profiles>
<profile>
<id>test-coverage</id>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.7.8</version>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>integration-tests-wildfly</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<systemPropertyVariables>
<jboss.server.log.dir>${jboss.home.dir}/standalone/log</jboss.server.log.dir>
<arquillian.launch>jbossas-managed</arquillian.launch>
<jbossas.startup.timeout>240</jbossas.startup.timeout>
</systemPropertyVariables>
<includes>
<include>**/*IT.java</include>
</includes>
</configuration>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.wildfly.arquillian</groupId>
<artifactId>wildfly-arquillian-container-managed</artifactId>
<version>2.0.2.Final</version>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
有什么帮助吗?