feat(P01): 迁移 Taro 小程序项目代码
- 迁移前端源码 (src/) - 迁移后端服务 (server/) - 迁移配置文件 (package.json, tsconfig.json 等) - 更新需求概要文档 - 更新架构设计文档 - 更新接口定义文档 - 更新环境配置文档 - 创建测试目录结构和配置 项目技术栈: - Taro 4.1.9 (跨端框架) - React 18 - TypeScript - NestJS (后端) - Tailwind CSS 4 - shadcn/ui 组件库
This commit is contained in:
@@ -1 +1,90 @@
|
||||
# tests
|
||||
# P01_errlens_app - 测试目录
|
||||
|
||||
## 测试结构
|
||||
|
||||
```
|
||||
tests/
|
||||
├── unit/ # 单元测试
|
||||
│ ├── components/ # 组件测试
|
||||
│ ├── lib/ # 工具函数测试
|
||||
│ └── pages/ # 页面测试
|
||||
│
|
||||
├── integration/ # 集成测试
|
||||
│ ├── api/ # API 集成测试
|
||||
│ └── components/ # 组件集成测试
|
||||
│
|
||||
├── e2e/ # 端到端测试
|
||||
│ └── scenarios/ # 用户场景测试
|
||||
│
|
||||
├── __mocks__/ # Mock 文件
|
||||
│ ├── network.ts
|
||||
│ └── taro.ts
|
||||
│
|
||||
├── setup.ts # 测试环境配置
|
||||
├── jest.config.js # Jest 配置
|
||||
└── README.md # 本文件
|
||||
```
|
||||
|
||||
## 测试框架
|
||||
|
||||
| 框架 | 用途 |
|
||||
|------|------|
|
||||
| Jest | 测试运行器 |
|
||||
| @testing-library/react | React 组件测试 |
|
||||
| Vitest | 替代 Jest(可选) |
|
||||
| Supertest | HTTP API 测试 |
|
||||
|
||||
## 测试命令
|
||||
|
||||
```bash
|
||||
# 运行所有测试
|
||||
npm test
|
||||
|
||||
# 运行单元测试
|
||||
npm run test:unit
|
||||
|
||||
# 运行集成测试
|
||||
npm run test:integration
|
||||
|
||||
# 运行 E2E 测试
|
||||
npm run test:e2e
|
||||
|
||||
# 监听模式
|
||||
npm run test:watch
|
||||
|
||||
# 生成覆盖率报告
|
||||
npm run test:coverage
|
||||
```
|
||||
|
||||
## 测试覆盖率目标
|
||||
|
||||
| 类型 | 目标覆盖率 |
|
||||
|------|-----------|
|
||||
| 单元测试 | >= 80% |
|
||||
| 集成测试 | >= 60% |
|
||||
| E2E 测试 | 3+ 核心场景 |
|
||||
|
||||
## 待编写测试
|
||||
|
||||
### 单元测试
|
||||
- [ ] Button 组件测试
|
||||
- [ ] Input 组件测试
|
||||
- [ ] Card 组件测试
|
||||
- [ ] Dialog 组件测试
|
||||
- [ ] utils 函数测试
|
||||
- [ ] platform 检测测试
|
||||
|
||||
### 集成测试
|
||||
- [ ] 用户登录流程测试
|
||||
- [ ] 代码分析流程测试
|
||||
- [ ] 历史记录查询测试
|
||||
|
||||
### E2E 测试
|
||||
- [ ] 完整登录-分析-查看结果流程
|
||||
- [ ] 错误处理流程
|
||||
- [ ] 多端兼容性测试
|
||||
|
||||
---
|
||||
|
||||
**文档版本**:v1.0.0
|
||||
**最后更新**:2026-05-22
|
||||
|
||||
Reference in New Issue
Block a user