Как пропустить тесты только для цели «compile» и «install», но не для цели «test»? - PullRequest
6 голосов
/ 06 сентября 2010

У меня есть ситуация, когда нашим модульным тестам требуется много времени для выполнения проекта нашего бизнес-домена, поскольку он устанавливает базу данных в известное состояние и затем выполняет каждый шаг.Я понимаю, что это можно сделать с помощью «-Dmaven.test.skip = true» в командной строке, но я хочу настроить это в NetBeans только для проекта, в целом это будет приемлемо, если кто-нибудь сможет уточнить, как настроить в среде IDE.*

Как настроить maven2 для выполнения тестов только при вызове цели «test»?

Использование следующего отключит тесты, даже когда вызывается цель «test» ( из mavendocos ).

<plugins>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.6</version>
    <configuration>
      <skipTests>true</skipTests>
    </configuration>
  </plugin>
</plugins>

Ответы [ 5 ]

7 голосов
/ 06 сентября 2010

http://maven.apache.org/general.html#skip-test

Просто укажите -Dmaven.test.skip = true, когда вы вызываете цель и не хотите выполнять тесты.

4 голосов
/ 01 августа 2013

Вы можете сделать это просто в свойствах проекта.В NetBeans перейдите в «Свойства проекта», в правом столбце выберите «Действия».Здесь вы можете установить свойства для каждого действия и каждой конфигурации (среды).

Чтобы пропустить тесты, добавьте свойства maven.test.skip = true

3 голосов
/ 22 марта 2017

Обновление для Netbeans 8:

  • Щелкните правой кнопкой мыши по вашему проекту
  • Выберите свойства
  • Перейти к действиям
  • Выберите действие Maven
  • Добавить свойство Skip Tests

См. Следующее изображение:

1 голос
/ 17 сентября 2010

Я вижу, что вы приняли ответ на этот вопрос, но позвольте мне предложить альтернативу.

Тип теста, который вы описываете, является интеграционным, а не модульным.Правда, это все еще автоматический тест, но он опирается на внешний ресурс и может занять значительно больше времени.Это отличительная черта ИТ.

Maven создан для запуска интеграционных тестов отдельно по тем причинам, которые вы описываете. maven-failsafe-plugin используется для выполнения интеграционных тестов (* IT.java вместо * Test.java), и этот плагин выполняется во время фазы жизненного цикла интеграционных тестов (тогда какверный перехватывает тест фаза).

Суть в том, что вы можете пройти весь путь до пакета жизненного цикла , не выполняятесты.

Обратите внимание, что этап install наступает после интеграционного теста , и это имеет смысл ... если вы устанавливаете новый снимок, выубедитесь, что хотите запустить полный набор тестов, чтобы убедиться, что все работает.

0 голосов
/ 07 сентября 2010

для проекта лучше всего отключить выполнение теста по умолчанию и создать профиль, который его разрешает. Затем в пользовательском интерфейсе NetBeans откройте панель «Свойства» проекта «Свойства» и включите профиль в тестовом, тестовом файле и отладочных тестовых действиях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...