From 6e8ef308ed529cffda6c020bfb0e64974737aa59 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子Li <15040126243@163.com>
Date: 星期五, 28 十月 2022 23:21:44 +0800
Subject: [PATCH] add 增加 junit5 单元测试案例
---
ruoyi-admin/src/test/java/com/ruoyi/test/AssertUnitTest.java | 45 +++++++++
ruoyi-admin/src/test/java/com/ruoyi/test/TagUnitTest.java | 54 ++++++++++
ruoyi-admin/src/test/java/com/ruoyi/test/ParamUnitTest.java | 72 ++++++++++++++
ruoyi-admin/pom.xml | 6 +
ruoyi-admin/src/test/java/com/ruoyi/test/DemoUnitTest.java | 70 ++++++++++++++
pom.xml | 12 ++
6 files changed, 259 insertions(+), 0 deletions(-)
diff --git a/pom.xml b/pom.xml
index 49fcea6..e9a611c 100644
--- a/pom.xml
+++ b/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>
diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml
index 0691a64..f966de0 100644
--- a/ruoyi-admin/pom.xml
+++ b/ruoyi-admin/pom.xml
@@ -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>
diff --git a/ruoyi-admin/src/test/java/com/ruoyi/test/AssertUnitTest.java b/ruoyi-admin/src/test/java/com/ruoyi/test/AssertUnitTest.java
new file mode 100644
index 0000000..5b9c9f8
--- /dev/null
+++ b/ruoyi-admin/src/test/java/com/ruoyi/test/AssertUnitTest.java
@@ -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);
+ }
+
+}
diff --git a/ruoyi-admin/src/test/java/com/ruoyi/test/DemoUnitTest.java b/ruoyi-admin/src/test/java/com/ruoyi/test/DemoUnitTest.java
new file mode 100644
index 0000000..a40fd82
--- /dev/null
+++ b/ruoyi-admin/src/test/java/com/ruoyi/test/DemoUnitTest.java
@@ -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 // 姝ゆ敞瑙e彧鑳藉湪 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 ==================");
+ }
+
+}
diff --git a/ruoyi-admin/src/test/java/com/ruoyi/test/ParamUnitTest.java b/ruoyi-admin/src/test/java/com/ruoyi/test/ParamUnitTest.java
new file mode 100644
index 0000000..04bf1b5
--- /dev/null
+++ b/ruoyi-admin/src/test/java/com/ruoyi/test/ParamUnitTest.java
@@ -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 ==================");
+ }
+
+
+}
diff --git a/ruoyi-admin/src/test/java/com/ruoyi/test/TagUnitTest.java b/ruoyi-admin/src/test/java/com/ruoyi/test/TagUnitTest.java
new file mode 100644
index 0000000..04240a0
--- /dev/null
+++ b/ruoyi-admin/src/test/java/com/ruoyi/test/TagUnitTest.java
@@ -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 ==================");
+ }
+
+
+}
--
Gitblit v1.9.3