mirror of
				https://github.com/dromara/RuoYi-Vue-Plus.git
				synced 2025-11-04 08:13:44 +08:00 
			
		
		
		
	add 增加 junit5 单元测试案例
This commit is contained in:
		
							
								
								
									
										12
									
								
								pom.xml
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								pom.xml
									
									
									
									
									
								
							@@ -365,6 +365,18 @@
 | 
			
		||||
                    </annotationProcessorPaths>
 | 
			
		||||
                </configuration>
 | 
			
		||||
            </plugin>
 | 
			
		||||
            <!-- 单元测试使用 -->
 | 
			
		||||
            <plugin>
 | 
			
		||||
                <groupId>org.apache.maven.plugins</groupId>
 | 
			
		||||
                <artifactId>maven-surefire-plugin</artifactId>
 | 
			
		||||
                <version>2.22.2</version>
 | 
			
		||||
                <configuration>
 | 
			
		||||
                    <!-- 根据打包环境执行对应的@Tag测试方法 -->
 | 
			
		||||
                    <groups>${profiles.active}</groups>
 | 
			
		||||
                    <!-- 排除标签 -->
 | 
			
		||||
                    <excludedGroups>exclude</excludedGroups>
 | 
			
		||||
                </configuration>
 | 
			
		||||
            </plugin>
 | 
			
		||||
        </plugins>
 | 
			
		||||
        <resources>
 | 
			
		||||
            <resource>
 | 
			
		||||
 
 | 
			
		||||
@@ -78,6 +78,12 @@
 | 
			
		||||
            <artifactId>ruoyi-demo</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>org.springframework.boot</groupId>
 | 
			
		||||
            <artifactId>spring-boot-starter-test</artifactId>
 | 
			
		||||
            <scope>test</scope>
 | 
			
		||||
        </dependency>
 | 
			
		||||
 | 
			
		||||
    </dependencies>
 | 
			
		||||
 | 
			
		||||
    <build>
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										45
									
								
								ruoyi-admin/src/test/java/com/ruoyi/test/AssertUnitTest.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								ruoyi-admin/src/test/java/com/ruoyi/test/AssertUnitTest.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,45 @@
 | 
			
		||||
package com.ruoyi.test;
 | 
			
		||||
 | 
			
		||||
import org.junit.jupiter.api.Assertions;
 | 
			
		||||
import org.junit.jupiter.api.DisplayName;
 | 
			
		||||
import org.junit.jupiter.api.Test;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 断言单元测试案例
 | 
			
		||||
 *
 | 
			
		||||
 * @author Lion Li
 | 
			
		||||
 */
 | 
			
		||||
@DisplayName("断言单元测试案例")
 | 
			
		||||
public class AssertUnitTest {
 | 
			
		||||
 | 
			
		||||
    @DisplayName("测试 assertEquals 方法")
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testAssertEquals() {
 | 
			
		||||
        Assertions.assertEquals("666", new String("666"));
 | 
			
		||||
        Assertions.assertNotEquals("666", new String("666"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @DisplayName("测试 assertSame 方法")
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testAssertSame() {
 | 
			
		||||
        Object obj = new Object();
 | 
			
		||||
        Object obj1 = obj;
 | 
			
		||||
        Assertions.assertSame(obj, obj1);
 | 
			
		||||
        Assertions.assertNotSame(obj, obj1);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @DisplayName("测试 assertTrue 方法")
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testAssertTrue() {
 | 
			
		||||
        Assertions.assertTrue(true);
 | 
			
		||||
        Assertions.assertFalse(true);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @DisplayName("测试 assertNull 方法")
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testAssertNull() {
 | 
			
		||||
        Assertions.assertNull(null);
 | 
			
		||||
        Assertions.assertNotNull(null);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										70
									
								
								ruoyi-admin/src/test/java/com/ruoyi/test/DemoUnitTest.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								ruoyi-admin/src/test/java/com/ruoyi/test/DemoUnitTest.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,70 @@
 | 
			
		||||
package com.ruoyi.test;
 | 
			
		||||
 | 
			
		||||
import com.ruoyi.common.config.RuoYiConfig;
 | 
			
		||||
import org.junit.jupiter.api.*;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.boot.test.context.SpringBootTest;
 | 
			
		||||
 | 
			
		||||
import java.util.concurrent.TimeUnit;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 单元测试案例
 | 
			
		||||
 *
 | 
			
		||||
 * @author Lion Li
 | 
			
		||||
 */
 | 
			
		||||
@SpringBootTest // 此注解只能在 springboot 主包下使用 需包含 main 方法与 yml 配置文件
 | 
			
		||||
@DisplayName("单元测试案例")
 | 
			
		||||
public class DemoUnitTest {
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    private RuoYiConfig ruoYiConfig;
 | 
			
		||||
 | 
			
		||||
    @DisplayName("测试 @SpringBootTest @Test @DisplayName 注解")
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testTest() {
 | 
			
		||||
        System.out.println(ruoYiConfig);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Disabled
 | 
			
		||||
    @DisplayName("测试 @Disabled 注解")
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testDisabled() {
 | 
			
		||||
        System.out.println(ruoYiConfig);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Timeout(value = 2L, unit = TimeUnit.SECONDS)
 | 
			
		||||
    @DisplayName("测试 @Timeout 注解")
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testTimeout() throws InterruptedException {
 | 
			
		||||
        Thread.sleep(3000);
 | 
			
		||||
        System.out.println(ruoYiConfig);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    @DisplayName("测试 @RepeatedTest 注解")
 | 
			
		||||
    @RepeatedTest(3)
 | 
			
		||||
    public void testRepeatedTest() {
 | 
			
		||||
        System.out.println(666);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @BeforeAll
 | 
			
		||||
    public static void testBeforeAll() {
 | 
			
		||||
        System.out.println("@BeforeAll ==================");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @BeforeEach
 | 
			
		||||
    public void testBeforeEach() {
 | 
			
		||||
        System.out.println("@BeforeEach ==================");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @AfterEach
 | 
			
		||||
    public void testAfterEach() {
 | 
			
		||||
        System.out.println("@AfterEach ==================");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @AfterAll
 | 
			
		||||
    public static void testAfterAll() {
 | 
			
		||||
        System.out.println("@AfterAll ==================");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										72
									
								
								ruoyi-admin/src/test/java/com/ruoyi/test/ParamUnitTest.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								ruoyi-admin/src/test/java/com/ruoyi/test/ParamUnitTest.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,72 @@
 | 
			
		||||
package com.ruoyi.test;
 | 
			
		||||
 | 
			
		||||
import com.ruoyi.common.enums.UserType;
 | 
			
		||||
import org.junit.jupiter.api.AfterEach;
 | 
			
		||||
import org.junit.jupiter.api.BeforeEach;
 | 
			
		||||
import org.junit.jupiter.api.DisplayName;
 | 
			
		||||
import org.junit.jupiter.params.ParameterizedTest;
 | 
			
		||||
import org.junit.jupiter.params.provider.EnumSource;
 | 
			
		||||
import org.junit.jupiter.params.provider.MethodSource;
 | 
			
		||||
import org.junit.jupiter.params.provider.NullSource;
 | 
			
		||||
import org.junit.jupiter.params.provider.ValueSource;
 | 
			
		||||
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.stream.Stream;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 带参数单元测试案例
 | 
			
		||||
 *
 | 
			
		||||
 * @author Lion Li
 | 
			
		||||
 */
 | 
			
		||||
@DisplayName("带参数单元测试案例")
 | 
			
		||||
public class ParamUnitTest {
 | 
			
		||||
 | 
			
		||||
    @DisplayName("测试 @ValueSource 注解")
 | 
			
		||||
    @ParameterizedTest
 | 
			
		||||
    @ValueSource(strings = {"t1", "t2", "t3"})
 | 
			
		||||
    public void testValueSource(String str) {
 | 
			
		||||
        System.out.println(str);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @DisplayName("测试 @NullSource 注解")
 | 
			
		||||
    @ParameterizedTest
 | 
			
		||||
    @NullSource
 | 
			
		||||
    public void testNullSource(String str) {
 | 
			
		||||
        System.out.println(str);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @DisplayName("测试 @EnumSource 注解")
 | 
			
		||||
    @ParameterizedTest
 | 
			
		||||
    @EnumSource(UserType.class)
 | 
			
		||||
    public void testEnumSource(UserType type) {
 | 
			
		||||
        System.out.println(type.getUserType());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @DisplayName("测试 @MethodSource 注解")
 | 
			
		||||
    @ParameterizedTest
 | 
			
		||||
    @MethodSource("getParam")
 | 
			
		||||
    public void testMethodSource(String str) {
 | 
			
		||||
        System.out.println(str);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static Stream<String> getParam() {
 | 
			
		||||
        List<String> list = new ArrayList<>();
 | 
			
		||||
        list.add("t1");
 | 
			
		||||
        list.add("t2");
 | 
			
		||||
        list.add("t3");
 | 
			
		||||
        return list.stream();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @BeforeEach
 | 
			
		||||
    public void testBeforeEach() {
 | 
			
		||||
        System.out.println("@BeforeEach ==================");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @AfterEach
 | 
			
		||||
    public void testAfterEach() {
 | 
			
		||||
        System.out.println("@AfterEach ==================");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										54
									
								
								ruoyi-admin/src/test/java/com/ruoyi/test/TagUnitTest.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								ruoyi-admin/src/test/java/com/ruoyi/test/TagUnitTest.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,54 @@
 | 
			
		||||
package com.ruoyi.test;
 | 
			
		||||
 | 
			
		||||
import org.junit.jupiter.api.*;
 | 
			
		||||
import org.springframework.boot.test.context.SpringBootTest;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 标签单元测试案例
 | 
			
		||||
 *
 | 
			
		||||
 * @author Lion Li
 | 
			
		||||
 */
 | 
			
		||||
@SpringBootTest
 | 
			
		||||
@DisplayName("标签单元测试案例")
 | 
			
		||||
public class TagUnitTest {
 | 
			
		||||
 | 
			
		||||
    @Tag("dev")
 | 
			
		||||
    @DisplayName("测试 @Tag dev")
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testTagDev() {
 | 
			
		||||
        System.out.println("dev");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Tag("prod")
 | 
			
		||||
    @DisplayName("测试 @Tag prod")
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testTagProd() {
 | 
			
		||||
        System.out.println("prod");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Tag("local")
 | 
			
		||||
    @DisplayName("测试 @Tag local")
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testTagLocal() {
 | 
			
		||||
        System.out.println("local");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Tag("exclude")
 | 
			
		||||
    @DisplayName("测试 @Tag exclude")
 | 
			
		||||
    @Test
 | 
			
		||||
    public void testTagExclude() {
 | 
			
		||||
        System.out.println("exclude");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @BeforeEach
 | 
			
		||||
    public void testBeforeEach() {
 | 
			
		||||
        System.out.println("@BeforeEach ==================");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @AfterEach
 | 
			
		||||
    public void testAfterEach() {
 | 
			
		||||
        System.out.println("@AfterEach ==================");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user