0

Я использую последнюю версию jacoco-maven-plugin (0.7.8) и последнюю версию arquillian-jacoco (1.0.0.Alpha9), но при выполнении теста IT у меня есть StackOverflowError в BeforeClass arquillian (Я использую Maven, TestNG, wildfly, jacoco, arquillian все в последних библиотеках):Maven + Jacoco + Arquillian + TestNG IT test = stackoverflowError

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" 

Failed тесты: 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> 

помощь?

+0

может быть, ключ у меня есть в моих ArquillianDeploymentHelper этих строк: File [] LIBS = pom.importDependencies (scopes) .resolve(). using (TransitiveStrategy.INSTANCE) .asFile(); \t \t \t \t Веб-архив архив = ShrinkWrap.create (WebArchive.class, имя_архив) \t \t \t \t .addAsLibraries (LIBS), я думаю, jacoco попытаться инструмент всех библиотеки классов которым причина StackOverflowError в сервере я не знаю, как настроить, чтобы он не выполнялся во время выполнения, потому что в отчете jacoco есть не все библиотеки, только мои тестовые классы – cyril

ответ

0

, добавив следующий код в arquillian.xml работает для меня:

<extension qualifier="jacoco"> 
    <property name="includes">com.your.top.package.*</property> 
</extension> 

действительно ваши классы будут использоваться только в инструментовки

 Смежные вопросы

  • Нет связанных вопросов^_^