Рубрики
Без рубрики

Тестовые примеры JUnit – Eclipse и Maven

Тестовые случаи JUnit, интеграция с JUnit Eclipse, Конфигурация запуска JUnit Eclipse, сборка JUnit maven, запуск теста JUnit с помощью Maven, тестовые классы JUnit Jupiter.

Автор оригинала: Pankaj Kumar.

Тестовые случаи JUnit – это обычный класс java с методами, которые должны выполняться платформой JUnit. JUnit 5-это серьезное обновление по сравнению с более ранними версиями.

Создание тестовых случаев JUnit в Eclipse

Последние версии Eclipse имеют встроенную поддержку для создания тестовых случаев JUnit. Мы можем легко создать класс тестовых случаев JUnit в Eclipse, как показано ниже.

Перейдите в Новый | тестовый случай JUnit в вашем Eclipse.

В следующем всплывающем окне укажите имя тестового класса, его пакет, заглушки методов для создания и т.д. Обратите внимание, что Eclipse предоставляет нам возможность создавать тестовые случаи JUnit 3, JUnit 4 и JUnit Jupiter. Если в вашем проекте не используется более старая версия JUnit и вы не перешли на последние версии, лучше создать тестовый случай JUnit Jupiter.

Как только вы нажмете на кнопку “Готово”, будет сгенерирован класс тестового примера. Вы можете запустить этот класс, перейдя в Выполнить | Выполнить как | Тест JUnit . Вы также можете перейти в это меню, щелкнув правой кнопкой мыши в окне редактора или выбрав класс, а затем щелкнув по нему правой кнопкой мыши.

Конфигурации запуска JUnit Eclipse

Вы также можете создавать конфигурации запуска для выполнения тестовых случаев JUnit. Конфигурации запуска полезны при одновременном запуске нескольких тестовых классов путем выбора пакета или выбора только нескольких методов для запуска в тестовом классе.

При запуске теста JUnit автоматически создается пример конфигурации запуска. Таким образом, вы можете просто отредактировать их в соответствии с вашими требованиями.

Выполнение тестовых случаев JUnit с помощью сборки Maven

Если вы хотите, чтобы ваши тестовые случаи JUnit 5 выполнялись с помощью сборки maven, вам нужно будет настроить плагин maven-surefire с зависимостями junit-platform-surefire-provider .


	
		
            org.apache.maven.plugins
            maven-surefire-plugin
            2.22.0
            
                
                    org.junit.platform
                    junit-platform-surefire-provider
                    1.2.0
                
            
        
	

Вот простой тестовый класс JUnit, который я создал в своем примере проекта.

package com.journaldev.annotations;

import static org.junit.jupiter.api.Assertions.*;

import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import com.journaldev.utils.MyUtils;

class MyUtilsTest {

	@BeforeAll
	static void setUpBeforeClass() throws Exception {
		System.out.println("Set Up Before Class - @BeforeAll");
	}

	@AfterAll
	static void tearDownAfterClass() throws Exception {
		System.out.println("Tear Down After Class - @AfterAll");
	}

	@BeforeEach
	void setUp() throws Exception {
		System.out.println("Set Up @BeforeEach");
	}

	@AfterEach
	void tearDown() throws Exception {
		System.out.println("Tear Down @AfterEach");
	}

	@Test
	void test_add() {
		assertEquals(10, MyUtils.add(5, 5));
	}

	@Test
	void test_reverse() {
		assertEquals("cba", MyUtils.reverse("abc"));
	}
}

Когда команда mvn test выполняется, она создает следующий фрагмент кода для выполнения нашего тестового класса JUnit.

[INFO] Running com.journaldev.annotations.MyUtilsTest
Set Up Before Class - @BeforeAll
Set Up @BeforeEach
Tear Down @AfterEach
Set Up @BeforeEach
Tear Down @AfterEach
Tear Down After Class - @AfterAll
[INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in com.journaldev.annotations.MyUtilsTest

Если вы хотите пропустить выполнение тестовых случаев, вы можете выполнить следующую команду:

mvn clean install -Dmaven.test.skip=true

Резюме

Тестовые примеры JUnit помогают нам в модульном тестировании нашего кода. Eclipse IDE обеспечивает отличную встроенную поддержку для создания и выполнения тестовых классов JUnit. Мы также узнали, как настроить ваш проект maven для выполнения тестовых случаев JUnit Jupiter из командной строки maven build.