Вы можете использовать mvn-тест
для запуска модульного теста в Maven. Несколько примеров:
# Run all the unit test classes. $ mvn test # Run a single test class. $ mvn -Dtest=TestApp1 test # Run multiple test classes. $ mvn -Dtest=TestApp1,TestApp2 test # Run a single test method from a test class. $ mvn -Dtest=TestApp1#methodname test # Run all test methods that match pattern 'testHello*' from a test class. $ mvn -Dtest=TestApp1#testHello* test # Run all test methods match pattern 'testHello*' and 'testMagic*' from a test class. $ mvn -Dtest=TestApp1#testHello*+testMagic* test
Плагин по умолчанию maven-surefire-plugin
устарел, убедитесь, что обновлен до последней версии для поддержки новых функций, таких как сопоставление с образцом или запуск одного метода тестирования и т. Д.
org.apache.maven.plugins maven-surefire-plugin 2.22.0
1. Проект Maven Java
Просмотрите простой проект Java, как запускать классы модульного тестирования в Maven.
1.1 Структура каталогов.
1.2 Maven + JUnit 5 примеров.
4.0.0 com.mkyong.examples maven-unit-test jar 1.0-SNAPSHOT UTF-8 1.8 1.8 org.junit.jupiter junit-jupiter-engine 5.3.1 test maven-unit-test org.apache.maven.plugins maven-surefire-plugin 2.22.0
1.3 Два класса Java, позже мы создадим для него классы модульных тестов.
package com.mkyong.examples; public class MagicBuilder { public static int getLucky() { return 7; } }
package com.mkyong.examples; public class MessageBuilder { public static String getHelloWorld(){ return "hello world"; } public static int getNumber10(){ return 10; } }
1.4 Тестовый класс для Волшебного строителя
package com.mkyong.examples; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; public class TestMagicBuilder { @Test public void testLucky() { assertEquals(7, MagicBuilder.getLucky()); } }
1.5 Тестовый класс для MessageBuilder
package com.mkyong.examples; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; public class TestMessageBuilder { @Test public void testHelloWorld() { assertEquals("hello world", MessageBuilder.getHelloWorld()); } @Test public void testNumber10() { assertEquals(10, MessageBuilder.getNumber10()); } }
2. Тест Maven
2.1 Запустите все тестовые классы.
$ mvn test [INFO] ------------------------------------------------------- [INFO] T E S T S [INFO] ------------------------------------------------------- [INFO] Running com.mkyong.examples.TestMagicBuilder [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 s - in com.mkyong.examples.TestMagicBuilder [INFO] Running com.mkyong.examples.TestMessageBuilder [INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in com.mkyong.examples.TestMessageBuilder [INFO]
2.2 Запустить один тестовый класс Конструктор тестовых сообщений
$ mvn -Dtest=TestMessageBuilder test [INFO] ------------------------------------------------------- [INFO] T E S T S [INFO] ------------------------------------------------------- [INFO] Running com.mkyong.examples.TestMessageBuilder [INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 s - in com.mkyong.examples.TestMessageBuilder [INFO]
2.3 Запустите один метод тестирования тест HelloWorld()
из тестового класса Конструктор тестовых сообщений
$ mvn -Dtest=TestMessageBuilder#testHelloWorld test [INFO] ------------------------------------------------------- [INFO] T E S T S [INFO] ------------------------------------------------------- [INFO] Running com.mkyong.examples.TestMessageBuilder [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 s - in com.mkyong.examples.TestMessageBuilder [INFO]
Скачать Исходный Код
Рекомендации
Оригинал: “https://mkyong.com/maven/how-to-run-unit-test-with-maven/”