53 lines
1.3 KiB
Markdown
53 lines
1.3 KiB
Markdown
# 测试基础设施
|
|
|
|
## 测试目录结构
|
|
|
|
```
|
|
tests/
|
|
├── invariants/ # 核心不变量测试(每次CI必跑)
|
|
│ ├── INV-001_Required不可自动放宽.test.ts
|
|
│ ├── INV-002_未Mutual不可聊天.test.ts
|
|
│ ├── INV-003_Block后双方不可互动.test.ts
|
|
│ ├── INV-004_双向并发Like只创建一个Match.test.ts
|
|
│ ├── INV-005_Activity最后一个名额不可超卖.test.ts
|
|
│ ├── INV-006_单向活动意向不可泄露.test.ts
|
|
│ ├── INV-007_红娘不能替用户Like.test.ts
|
|
│ ├── INV-008_非授权Operator不能读取身份证.test.ts
|
|
│ ├── INV-009_非案件上下文不能读取聊天.test.ts
|
|
│ └── INV-010_跨Organization不能越权.test.ts
|
|
├── unit/ # 单元测试
|
|
├── integration/ # 集成测试
|
|
├── api/ # API 测试
|
|
├── permission/ # 权限测试
|
|
├── concurrency/ # 并发测试
|
|
└── e2e/ # 端到端测试
|
|
```
|
|
|
|
## Phase 01 测试骨架
|
|
|
|
每个测试文件至少包含:
|
|
- 测试描述
|
|
- 前置条件
|
|
- 操作步骤
|
|
- 预期结果
|
|
- 断言
|
|
|
|
## 运行测试
|
|
|
|
```bash
|
|
# Backend 单元测试
|
|
cd backend
|
|
./mvnw test
|
|
|
|
# Backend 集成测试
|
|
./mvnw verify
|
|
|
|
# Admin Web 构建检查
|
|
cd admin-web
|
|
pnpm build
|
|
|
|
# Miniapp 编译检查
|
|
cd miniapp
|
|
npx tsc --noEmit
|
|
```
|