Вопрос

У меня есть некоторые проблемы с запуском моих модульных тестов, когда мой POM установлен на упаковку «POM». Сначала он говорил, что для этого проекта нет целей, поэтому я добавил Maven-Surefire-Plugin в свой pom.xml, чтобы связать фазу испытаний с целью испытательной цели Maven-Surefire-Plugin.

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.9</version>
            <executions>
                <execution>
                    <phase>test</phase>
                    <goals>
                        <goal>test</goal>
                    </goals>
                </execution>
            </executions>
        </plugin> 

Теперь плагин Surefire выполняется, но он говорит, что нет никаких тестов для запуска. Если я изменю тип упаковки на JAR и запускаю тест MVN, то он собирает мои файлы тестов.

Когда я запускаю тест MVN -x, он говорит «testsourcedirectory = c: dev dsl src test java», что является правильным местоположением. Является ли место тестирования отличным для типа упаковки «POM», чем для «JAR»? Я пытался добавить

            <configuration>
                <testSourceDirectory>src/test/java</testSourceDirectory>
            </configuration>

К верному плагину, но это совсем не помогло.

Это было полезно?

Решение

Как прокомментировал Дейв, если вы используете pom Упаковка, она выполняет только следующие цели жизненного цикла. Ссылаться на это Связанная документация Maven.

  • упаковка
  • установить
  • развертывать

Если вам это нужно, чтобы выполнить любую другую цель, вам нужно явно указать ее. Например,

mvn clean compiler:testCompile surefire:test
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top