Отказоустойчивый Maven: интеграционный тест не распознает одиночный интеграционный тест - PullRequest
0 голосов
/ 22 января 2019

Мне удалось заставить отказоустойчивый модуль Maven успешно обнаруживать и запускать тесты в файлах интеграционных тестов для фиктивных проектов ( ссылка на GitHub repo ).Однако, когда я пытаюсь сделать то же самое для модуля в существующем проекте, я получаю сообщение об ошибке, в котором говорится, что тесты не выполнялись.

Вот мой pom.xml для рассматриваемого модуля:

<?xml version="1.0" encoding="UTF-8"?>
   <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns="http://maven.apache.org/POM/4.0.0"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
     http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
        <artifactId>common</artifactId>
        <groupId>DOMAIN</groupId>
        <version>1.0-SNAPSHOT</version>
     </parent>

     <modelVersion>4.0.0</modelVersion>
     <groupId><DOMAIN></groupId>
     <artifactId>aws-service-utilities</artifactId>
     <version>1.0-SNAPSHOT</version>
     <packaging>jar</packaging>

     <!-- Dependencies omitted, pretty sure they're irrelevant to this issue -->

     <build>
         <plugins>
             <plugin>
                  <artifactId>maven-failsafe-plugin</artifactId>
                  <version>2.22.0</version>
                  <executions>
                      <execution>
                          <goals>
                              <goal>integration-test</goal>
                              <goal>verify</goal>
                          </goals>
                      </execution>
                  </executions>
              </plugin>
          </plugins>
       </build>
    </project>

Вот тест интеграции, который я пытаюсь обнаружить:

YahooParserIT.java

package com.<DOMAIN>.tests;

import org.junit.Test;
/* Omitting some unnecessary imports */
import static org.junit.jupiter.api.Assertions.assertTrue;
import org.junit.Before;
import org.junit.jupiter.api.TestInstance;

@PowerMockIgnore("javax.management.*")
@RunWith(PowerMockRunner.class)
@PrepareForTest({S3AsyncClient.class, AmazonS3ClientBuilder.class, AmazonS3.class})
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
public class YahooParserIT {

    @Before
    public void before() {
        TestSetupUtils.prepareS3ServiceUtil();
    }

    @Test
    public void testParser() throws Exception {
        assertTrue(1 == 1);
    }
}

Я запускаю команду mvn -Dit.test=YahooParserIT failsafe:integration-test -e вуровень модуля aws-service-utilities и получите следующий вывод:

enter image description here

Приведенная выше команда отлично работает с фиктивным проектом, который я упоминал вПервое предложение этого вопроса.Любая идея, почему он не обнаруживает единый интеграционный тест?

Dropbox ссылка на pom.xml для всего проекта: https://www.dropbox.com/s/g8emcyu63g2isq0/pom.xml?dl=0

...