Maven не будет проходить тесты Спока

Я пытался настроить Maven для запуска тестов Спока (0.7), но безрезультатно. Я пытался использовать groovy-eclipse-compiler как gmaven который упоминается в документации Спока, больше не рекомендуется согласно его веб-сайту. Соответствующий раздел моего ПОМ:

<plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <compilerId>groovy-eclipse-compiler</compilerId>
                <verbose>true</verbose>
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>org.codehaus.groovy</groupId>
                    <artifactId>groovy-eclipse-compiler</artifactId>
                    <version>2.8.0-01</version>
                </dependency>
                <dependency>
                    <groupId>org.codehaus.groovy</groupId>
                    <artifactId>groovy-eclipse-batch</artifactId>
                    <version>2.1.8-01</version>
                </dependency>
            </dependencies>
        </plugin>

Когда я бегу mvn test Я получил:

-------------------------------------------------------
 T E S T S
-------------------------------------------------------

Results :

Tests run: 0, Failures: 0, Errors: 0, Skipped: 0

Есть идеи, почему maven/surefire просто не отвечает на мои тесты? Как следует из раздела сайта, я убедился, что в src/test/java

2 ответа

Решение

Surefire будет автоматически получать тесты Spock, если классы тестирования соответствуют соглашениям об именах Surefire (*Test и т.д. по умолчанию). Сначала вы должны проверить, действительно ли тестовые классы скомпилированы и находятся в target/test-classes, Если нет, вероятно, что-то не так с тем, как вы настраиваете Groovy-компилятор.

Если вы используете IDE, такую ​​как Idea или Eclipse, может случиться так, что сборка проекта из IDE успешно скомпилирует ваши тестовые классы.

  1. Чтобы убедиться, что сборка Maven работает и правильно настроена, выполните mvn clean verify из командной строки.
  2. Проверьте, скомпилирована ли сборка тестовых классов в target/test-classes

Если тестовые классы не были скомпилированы, то проблема заключается в неправильной конфигурации gmavenplus-plugin отвечает за компиляцию заводного кода.

Более чем вероятно, вы пропускаете часть целей выполнения:

<plugin>
  <groupId>org.codehaus.gmavenplus</groupId>
  <artifactId>gmavenplus-plugin</artifactId>
  <version>1.4</version>
  <executions>
    <execution>
      <goals>
        <goal>compile</goal>
        <goal>testCompile</goal>
      </goals>
    </execution>
  </executions>
</plugin>
Другие вопросы по тегам