# 编码标准和测试策略 ## 版本信息 | 版本 | 日期 | 描述 | 作者 | |------|------|------|------| | 2.4 | 2025-09-20 | 与主架构文档版本一致 | Winston | ## 现有标准合规性 - **代码风格**: TypeScript严格模式,一致的缩进和命名 - **linting规则**: 已配置ESLint,支持TypeScript和React - **测试模式**: 完整的测试框架已配置(Vitest + Testing Library + Playwright) - **文档风格**: 代码注释良好,测试策略文档完整 ### 增强特定标准 - **测试框架**: 使用Vitest + Testing Library + hono/testing + Playwright - **测试位置**: 统一在 `tests/` 目录中,按类型分层组织 - **覆盖率目标**: 核心业务逻辑 > 80% - **测试类型**: 单元测试、集成测试、E2E测试 - **测试策略**: 详见 [测试策略文档](./testing-strategy.md) ## 关键集成规则 - **现有API兼容性**: 确保测试不破坏现有API契约 - **数据库集成**: 使用测试数据库,避免污染生产数据 - **错误处理**: 测试各种错误场景和边界条件 - **日志一致性**: 测试日志格式和错误信息 ## 通用CRUD开发规范 - **CRUD开发**: 遵循 [通用CRUD规范](./generic-crud-standards.md) 进行开发 - **实体设计**: 使用TypeORM装饰器定义字段,为所有字段添加 `comment` 配置,包含时间戳字段 - **Schema设计**: 创建、更新、响应使用不同的Zod schema - **路由生成**: 使用 `createCrudRoutes` 自动生成API路由 - **用户跟踪**: 实现用户跟踪功能记录操作人信息 ## Taro小程序开发规范 - **组件开发**: 遵循 [Taro小程序开发规范](./taro-mini-program-standards.md) 进行开发 - **平台适配**: 正确处理微信小程序、H5等平台差异 - **状态管理**: 使用React Query管理服务端状态 - **路由导航**: 统一使用Taro路由API ## Tailwind CSS样式规范 - **样式开发**: 遵循 [Tailwind CSS样式规范](./tailwind-css-standards.md) 进行开发 - **原子化原则**: 优先使用Tailwind原子类,避免自定义CSS - **响应式设计**: 移动端优先的响应式布局 - **组件样式**: 使用shadcn/ui组件库和变体系统 ## mini-demo迁移规范 - **迁移指导**: 遵循 [mini-demo迁移指导规范](./mini-demo-migration-guide.md) 进行迁移 - **样式保留**: 确保百分百样式保留,保持用户体验一致性 - **技术栈转换**: 原生小程序 → Taro + React + TypeScript - **数据集成**: 模拟数据 → 真实后端API ## 管理后台开发规范 - **管理后台开发**: 遵循 [管理后台开发规范](./admin-dashboard-standards.md) 进行开发 - **页面结构**: 统一页面结构和布局标准 - **数据表格**: 标准表格组件使用规范 - **权限控制**: 基于角色的访问控制实现 - **用户体验**: 统一的加载状态、错误处理和用户反馈机制