### 立达中学食堂系统测试用例

#### 测试用例1：用户注册

**用例编号**: TC001  
**用例名称**: 用户注册  
**用例描述**: 测试新用户在系统上注册账户功能  
**前置条件**: 无  
**测试步骤**: 
1. 打开注册页面
2. 输入用户名
3. 输入邮箱
4. 输入密码
5. 确认密码
6. 点击“注册”按钮
**预期结果**: 
- 系统显示“注册成功”提示
- 用户收到激活邮件
- 用户信息存储在数据库中

---

#### 测试用例2：用户登录

**用例编号**: TC002  
**用例名称**: 用户登录  
**用例描述**: 测试用户登录系统功能  
**前置条件**: 用户已注册并激活账户  
**测试步骤**: 
1. 打开登录页面
2. 输入用户名
3. 输入密码
4. 点击“登录”按钮
**预期结果**: 
- 系统验证用户信息
- 登录成功后跳转至首页
- 显示用户个人信息

---

#### 测试用例3：添加菜品

**用例编号**: TC003  
**用例名称**: 添加菜品  
**用例描述**: 测试管理员添加新菜品功能  
**前置条件**: 管理员已登录系统  
**测试步骤**: 
1. 进入菜品管理页面
2. 点击“添加菜品”按钮
3. 输入菜品名称
4. 输入价格
5. 上传图片
6. 输入描述
7. 点击“保存”按钮
**预期结果**: 
- 菜品添加成功
- 菜品信息显示在菜品列表中
- 菜品信息存储在数据库中

---

#### 测试用例4：查看菜品列表

**用例编号**: TC004  
**用例名称**: 查看菜品列表  
**用例描述**: 测试用户查看每日菜品列表功能  
**前置条件**: 用户已登录系统，有菜品信息  
**测试步骤**: 
1. 登录系统
2. 进入菜品列表页面
**预期结果**: 
- 系统显示每日菜品列表
- 每个菜品显示名称、价格、图片

---

#### 测试用例5：预订餐品

**用例编号**: TC005  
**用例名称**: 预订餐品  
**用例描述**: 测试用户预订餐品功能  
**前置条件**: 用户已登录系统，有可预订的菜品  
**测试步骤**: 
1. 登录系统
2. 进入菜品列表页面
3. 选择菜品
4. 输入数量
5. 点击“预订”按钮
**预期结果**: 
- 系统生成订单
- 订单信息显示在用户订单列表中
- 订单信息存储在数据库中

---

#### 测试用例6：查看订单

**用例编号**: TC006  
**用例名称**: 查看订单  
**用例描述**: 测试用户查看历史订单功能  
**前置条件**: 用户已登录系统，有历史订单  
**测试步骤**: 
1. 登录系统
2. 进入订单管理页面
**预期结果**: 
- 系统显示用户的所有订单
- 每个订单显示菜品名称、数量、总价、状态

---

#### 测试用例7：库存预警

**用例编号**: TC007  
**用例名称**: 库存预警  
**用例描述**: 测试库存数量低于预警值时系统提醒功能  
**前置条件**: 管理员已登录系统，某种食材库存低于预警值  
**测试步骤**: 
1. 登录系统
2. 进入库存管理页面
**预期结果**: 
- 系统显示库存预警提示
- 预警信息显示在库存列表中

---

#### 测试用例8：生成销售报表

**用例编号**: TC008  
**用例名称**: 生成销售报表  
**用例描述**: 测试管理员生成销售报表功能  
**前置条件**: 管理员已登录系统，有销售数据  
**测试步骤**: 
1. 登录系统
2. 进入报表管理页面
3. 选择时间段
4. 点击“生成报表”按钮
**预期结果**: 
- 系统生成指定时间段的销售报表
- 报表显示销售额、销售量等信息

---

#### 测试用例9：用户权限管理

**用例编号**: TC009  
**用例名称**: 用户权限管理  
**用例描述**: 测试不同角色用户的权限  
**前置条件**: 不同角色（学生、教职工、管理员）用户已注册并登录系统  
**测试步骤**: 
1. 登录系统（学生角色）
2. 尝试访问管理员功能页面
3. 登录系统（教职工角色）
4. 尝试访问管理员功能页面
5. 登录系统（管理员角色）
6. 访问管理员功能页面
**预期结果**: 
- 学生和教职工角色无法访问管理员功能页面，系统提示“权限不足”
- 管理员角色可以正常访问和操作管理员功能页面

---

#### 测试用例10：系统安全测试

**用例编号**: TC010  
**用例名称**: 系统安全测试  
**用例描述**: 测试系统的安全性，包括数据传输、存储和权限管理  
**前置条件**: 系统已部署并运行  
**测试步骤**: 
1. 使用HTTPS访问系统
2. 测试SQL注入攻击
3. 测试XSS攻击
4. 测试弱密码登录
5. 检查用户密码存储方式
**预期结果**: 
- 数据传输使用HTTPS协议
- 系统防御SQL注入和XSS攻击，操作失败并提示错误信息
- 系统拒绝弱密码登录，提示用户设置强密码
- 用户密码在数据库中使用哈希加密存储