2014-01-23 2 views
0

Как запустить отдельную папку с тестами в определенном модуле?Как выполнять отдельные тесты?

Мои модули:

<modules> 
     <module>common</module> 
     <module>foo</module> 
     <module>bar</module> 
</modules> 

Каждый модуль имеет папку 2-3 тест. Мне нужно запустить тестовую папку «utils» в панели модулей.

я сделал предел для команды "тест МВН":

<plugins> 

    <plugin> 
    <artifactId>maven-surefire-plugin</artifactId> 
    <configuration> 
     <excludes> 
     <exclude>**/utils/**</exclude> 
     </excludes> 
    </configuration> 
    <executions> 

     <execution> 
     <id>surefire-itest</id> 
     <phase>integration-test</phase> 
     <goals> 
      <goal>test</goal> 
     </goals> 
     <configuration> 
      <excludes> 
      <exclude>none</exclude> 
      </excludes> 
      <includes> 
      <include>**/utils/**</include> 
      </includes> 
     </configuration> 
     </execution> 
    </executions> 
    </plugin> 

</plugins> 

тест МВН - запускает все тесты за исключением "утилитами". mvn integration-test - запускает все тесты.

Теперь мне нужно только начать «utils». Как решить эту проблему?

ответ

0

Вариант 1 заключается в использовании various profiles для запуска различных изысканий (включая и исключение) с помощью mvn test.

Вариант второй - использовать failsafe plugin с mvn verify. Это позволяет легко запускать только модульные тесты или модульные тесты и интеграционные тесты; только интеграционные тесты возможны, но неудобно.

Не используйте плагин surefire с mvn integration-test. Обычно лучше не использовать mvn integration-test. Для причины, пожалуйста, см. introduction to the maven lifecycle.

0

Создать другой для всего испытания в утилитах и ​​привязать его к фазе вы хотите запустить их.

Вы могли бы, возможно, группировать тесты с использованием categories, а если вы используете JUnit.

0

Я нашел решение этой проблемы: тест

МВН - запускает все тесты, кроме «утилитами» МВН тест -P utilsTest - только запускать тесты «утилитами»

<profiles> 
    <profile> 
     <id>utilsTest</id> 
     <build> 
      <plugins> 
       <plugin> 
        <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-surefire-plugin</artifactId> 
        <configuration> 
         <exclude>none</exclude> 
         <includes> 
          <include>**/utils/**</include> 
         </includes> 
        </configuration> 
       </plugin> 
      </plugins> 
     </build> 
    </profile> 

    <profile> 
     <id>test</id> 
     <activation> 
      <activeByDefault>true</activeByDefault> 
     </activation> 
     <build> 
      <plugins> 
       <plugin> 
        <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-surefire-plugin</artifactId> 
        <configuration> 
         <excludes> 
          <exclude>**/utils/**</exclude> 
         </excludes> 
        </configuration> 
       </plugin> 
      </plugins> 
     </build> 
    </profile> 
</profiles> 
Смежные вопросы