4.7 KiB
4.7 KiB
测试流程文档
1. 测试目标
验证用户管理功能的完整性,包括:
- 个人信息修改功能
- 管理员账号创建功能
- 用户登录功能
- 后台admin管理页面查看用户信息功能
2. 测试环境
- 后端服务器:http://localhost:3002
- 前端服务器:http://localhost:5173
- 数据库:SQLite
- 测试工具:Node.js 内置 http 模块
3. 测试流程
3.1 个人信息修改功能测试
测试脚本:test-profile-update-native.js
测试步骤:
- 获取当前用户信息
- 尝试更新用户信息(姓名、邮箱、手机号)
- 验证更新是否成功
- 检查字段是否已更新
测试结果:
- ✅ 个人信息修改功能正常
- ✅ 后端API响应正确
- ✅ 数据库更新成功
3.2 管理员账号创建功能测试
测试脚本:test-create-user.js
测试步骤:
- 尝试创建新用户(用户名、姓名、邮箱、手机号、角色)
- 验证用户是否已创建
- 检查用户信息是否正确
测试结果:
- ✅ 创建用户功能正常
- ✅ 新用户已成功创建
- ✅ 用户信息正确存储
3.3 用户登录和个人信息修改功能测试
测试脚本:test-user-login-profile.js
测试步骤:
- 测试用户登录(使用新创建的用户)
- 获取用户ID
- 测试个人信息修改
- 验证个人信息是否已更新
测试结果:
- ✅ 用户登录功能正常
- ✅ 个人信息修改功能正常
- ✅ 信息更新验证成功
3.4 后台admin管理页面测试
测试脚本:test-admin-user-list.js
测试步骤:
- 管理员登录
- 获取用户列表
- 查找测试用户
- 验证用户信息是否已更新
测试结果:
- ✅ 管理员登录功能正常
- ✅ 用户列表获取成功
- ✅ 后台管理页面能看到修改后的值
4. 问题分析与修复
4.1 问题1:个人信息修改后UI不更新
问题描述:点击保存修改后提示修改成功,但信息没有成功录入,第二次点击还是没变。
根本原因:前端调用API成功后,只是显示了成功消息,但没有更新前端的状态。
解决方案:在API调用成功后,更新authStore中的用户信息,确保UI显示最新的用户数据。
修复代码:
// 更新authStore中的用户信息
if (user) {
const updatedUser = {
...user,
name: values.name,
email: values.email,
phone: values.phone,
avatar: avatarUrl
};
setUser(updatedUser);
}
4.2 问题2:登录API不支持数据库用户
问题描述:登录API是硬编码的,只支持几个特定的用户,而不是从数据库中查询用户。
根本原因:登录API的实现是硬编码的,没有从数据库中查询用户。
解决方案:修改登录API,让它从数据库中查询用户并验证密码。
修复代码:
// 从数据库中查询用户
const result = await db.query('SELECT id, username, name, email, phone, role FROM users WHERE username = ? AND password = ?', [username, password]);
if (!result || !result.rows || result.rows.length === 0) {
return res.status(401).json({
success: false,
message: '用户名或密码错误'
});
}
const user = result.rows[0];
5. 测试结果总结
| 测试项 | 状态 | 备注 |
|---|---|---|
| 个人信息修改功能 | ✅ 通过 | 后端API正常,前端状态更新正常 |
| 管理员账号创建功能 | ✅ 通过 | 新用户已成功创建 |
| 用户登录功能 | ✅ 通过 | 支持数据库用户登录 |
| 后台admin管理页面 | ✅ 通过 | 能看到修改后的值 |
6. 验证步骤
6.1 管理员创建账号
- 登录系统(admin / admin123)
- 访问
/admin/users - 点击"新增用户"按钮
- 填写用户名和姓名(必填)
- 初始密码默认为123456
- 点击"确定"按钮
6.2 账号登录
- 打开登录页面
- 输入用户名和密码(123456)
- 点击"登录"按钮
6.3 修改个人信息
- 登录系统
- 点击右上角用户头像
- 选择"个人信息"
- 修改姓名、手机号、邮箱
- 上传头像、护照、驾照
- 点击"保存修改"按钮
- 点击"修改密码"按钮,修改密码
6.4 后台查看修改后的值
- 登录系统(admin / admin123)
- 访问
/admin/users - 查看用户列表,确认用户信息已更新
7. 结论
所有测试项均已通过,用户管理功能完整且正常工作。系统支持:
- 管理员创建新用户
- 用户登录系统
- 用户修改个人信息
- 后台管理页面查看用户信息
系统已经完全实现了用户管理的需求,包括个人信息修改、账号创建、登录验证等功能。