Как запускать тесты с помощью maven

Когда я запускаю команду mvn test в своем java-проекте, она показывает 0 запущенных тестов. В папке src/test/java есть единственный тестовый файл с именем xyzTest.java, хотя я могу перейти к нему, щелкнуть правой кнопкой мыши тестовый файл внутри Intellij Idea и запустить все тесты в файле. Мне было интересно, как я могу сделать то же самое в командной строке.
В настоящее время в pom.xml есть только зависимости. Я не использую никаких плагинов. Я читал, что в этом может помочь плагин surefire maven. Но мне кажется странным добавлять плагин для выполнения такой простой вещи. Как IntelliJ запускает его, когда вы щелкаете файл правой кнопкой мыши и запускаете его?
Есть ли альтернатива или способ запустить все тесты?
Я могу запустить основной файл с помощью командной строки, выполнив mvn exec:java

Покажите нам свой тестовый файл.

J Fabian Meier 05.04.2023 14:54

Вам нужно будет добавить плагин surefire.

emeraldjava 05.04.2023 15:02
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
51
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Когда вы бежите

mvn clean install

все тесты будут выполнены

Вы можете использовать эту команду и запустить тест mvn чистая установка -U -DskipTests=false

Ответ принят как подходящий

Вам нужно будет добавить плагин Surefire. Из документации Плагин Maven Surefire: «Плагин Surefire используется на этапе тестирования жизненного цикла сборки для выполнения модульных тестов приложения».

Со страницы Использование: «Наилучшей практикой является определение версии подключаемого модуля Surefire, которую вы хотите использовать, либо в вашем файле pom.xml, либо в родительском файле pom.xml:

<project>
  [...]
  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>3.0.0</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
  [...]
</project>

Плагин Surefire можно вызвать, вызвав тестовую фазу жизненного цикла сборки.

mvn test

" Вы можете запустить mvn test, если вы хотите запустить этапы Maven до теста включительно, или mvn clean verify, если вы хотите перестроить и протестировать свой проект.

Хотя я понимаю, что вам может показаться странным добавлять плагин для выполнения такой простой вещи, именно так работает Maven. Из документации Maven по плагинам: «Maven — это, по сути, среда выполнения плагинов; вся работа выполняется плагинами».

Другие вопросы по теме