Skip to content

Commit 55e4b5d

Browse files
author
litongjava
committed
add tio-boot test
1 parent a20e0c8 commit 55e4b5d

File tree

3 files changed

+81
-8
lines changed

3 files changed

+81
-8
lines changed

docs/.vuepress/config/sidebar-zh.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,8 @@
6262
"06_内置组件/06.md",
6363
"06_内置组件/07.md",
6464
"06_内置组件/08.md",
65-
"06_内置组件/09.md"
65+
"06_内置组件/09.md",
66+
"06_内置组件/10.md"
6667
]
6768
},
6869
{

docs/zh/01_tio-boot 简介/03.md

-7
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,3 @@ src\main\resources\app.properties
88
#http 配置
99
server.port = 80
1010
```
11-
12-
如果指定配置文件,需要在启动类中使用工具类 P 指定配置文件,默认使用的配置文件是 app.properties
13-
14-
```java
15-
// 初始化服务器并启动服务器
16-
P.use("app.properties");
17-
```

docs/zh/06_内置组件/10.md

+79
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# TioBootTest 类
2+
3+
#### 概览
4+
5+
`TioBootTest` 类便于初始化和配置 JUnit 测试的环境,它简化了设置属性和初始化 AOP 相关方面的过程。比如你只需要再 junit 中测试和 mysql 相关服务相关的业务只需要使用 TioBootTest 类加载 mysql 的配置类即可
6+
7+
#### 方法
8+
9+
1. **before(String env)**
10+
11+
- **描述**: 用指定的名称初始化环境。如果没有提供环境名称,它会从系统属性中获取默认环境。
12+
- **参数**:
13+
- `env` (String): 要初始化的环境的名称。如果为 `null`,方法尝试从系统属性中检索环境名称。
14+
- **用法**:
15+
- 这个方法通常在 JUnit 测试的 `@Before` 部分调用,以便在运行测试之前设置必要的环境。
16+
17+
2. **before(Class<?>... classes)**
18+
19+
- **描述**: 初始化默认环境并处理提供的类以进行 AOP。
20+
- **参数**:
21+
- `classes` (Class<?>...): 要处理以进行 AOP 初始化的类。
22+
- **用法**:
23+
- 当您需要在不指定特定环境的情况下初始化 AOP 的特定类时很有用。
24+
25+
3. **before(String env, Class<?>... classes)**
26+
27+
- **描述**: 类似于 `before(Class<?>... classes)`,但允许指定环境。
28+
- **参数**:
29+
- `env` (String): 环境的名称。
30+
- `classes` (Class<?>...): 要处理以进行 AOP 初始化的类。
31+
- **用法**:
32+
- 通过初始化指定的环境并为 AOP 准备给定的类,提供更全面的设置。
33+
34+
4. **scan(Class<?>... primarySources)**
35+
- **描述**: 扫描给定的主要来源,初始化默认环境,并处理扫描的类以进行 AOP。
36+
- **参数**:
37+
- `primarySources` (Class<?>...): 要扫描和处理的主要来源。
38+
- **抛出**:
39+
- 如果在扫描和初始化过程中发生任何错误,则抛出 `Exception`
40+
- **用法**:
41+
- 一个更高级的方法,通常在需要扫描除默认设置之外的额外类或包时使用。
42+
43+
#### JUnit 测试中的示例用法
44+
45+
连接测试环境的数据库进行数据插入
46+
47+
```java
48+
import org.junit.Before;
49+
import org.junit.Test;
50+
import com.enoleap.manglang.pen.api.server.config.ActiveRecordPluginConfiguration;
51+
import com.jfinal.kit.Kv;
52+
import com.litongjava.jfinal.aop.Aop;
53+
import com.litongjava.tio.boot.tesing.TioBootTest;
54+
55+
public class PenRawDataServiceTest {
56+
57+
@Before
58+
public void before() {
59+
// 初始化测试环境并为 AOP 准备 ActiveRecordPluginConfiguration 类
60+
TioBootTest.before("test", ActiveRecordPluginConfiguration.class);
61+
}
62+
63+
@Test
64+
public void test() {
65+
Kv kv = Kv.create();
66+
kv.set("page_no", 1);
67+
kv.set("page_size", 2);
68+
kv.set("user_id", "18374686479682812677");
69+
kv.set("payload_ts", 0);
70+
kv.set("payload_ts_op", "ge");
71+
72+
byte[] page = Aop.get(PenRawDataService.class).page(kv);
73+
74+
System.out.println(page.length);
75+
}
76+
}
77+
```
78+
79+
此示例展示了如何使用 `TioBootTest` 类为名为 `PenRawDataService` 的服务准备测试环境。`before` 方法设置了 `ActiveRecordPluginConfiguration` 的环境和 AOP,确保测试在必要的配置和依赖项下运行。

0 commit comments

Comments
 (0)