{ "test_date": "2026-06-22 19:55:53", "test_target": "设置和个人信息模块 (Settings & Profile)", "base_url": "http://localhost:3000", "summary": { "total": 108, "passed": 107, "failed": 0, "warnings": 1 }, "roles": { "admin": { "label": "管理员", "categories": { "Profile 页面": { "tests": [ { "name": "页面加载", "status": "passed", "details": "HTTP 200", "errors": [] }, { "name": "个人信息卡片", "status": "passed", "details": "所有字段显示正常", "errors": [] }, { "name": "账户信息卡片", "status": "passed", "details": "所有字段显示正常", "errors": [] }, { "name": "头像上传组件", "status": "passed", "details": "组件渲染正常", "errors": [] }, { "name": "角色概览", "status": "passed", "details": "admin 角色无专属概览,跳过", "errors": [] }, { "name": "编辑资料链接", "status": "passed", "details": "链接指向 /settings", "errors": [] } ], "passed": 6, "failed": 0, "warnings": 0 }, "Settings 页面": { "tests": [ { "name": "页面加载", "status": "passed", "details": "HTTP 200", "errors": [] }, { "name": "标签页显示", "status": "passed", "details": "所有标签页显示正常", "errors": [] } ], "passed": 2, "failed": 0, "warnings": 0 }, "Settings - 通用标签页": { "tests": [ { "name": "邮箱字段禁用", "status": "passed", "details": "邮箱字段已禁用", "errors": [] }, { "name": "个人资料表单显示", "status": "passed", "details": "表单字段完整", "errors": [] }, { "name": "个人资料表单提交", "status": "passed", "details": "保存成功", "errors": [] }, { "name": "角色快捷链接", "status": "passed", "details": "管理员无快捷链接(符合预期)", "errors": [] } ], "passed": 4, "failed": 0, "warnings": 0 }, "Settings - 通知标签页": { "tests": [ { "name": "保存按钮 dirty 检测", "status": "passed", "details": "初始状态保存按钮已禁用", "errors": [] }, { "name": "通知偏好显示", "status": "passed", "details": "所有区块显示正常", "errors": [] }, { "name": "切换通知开关", "status": "passed", "details": "开关切换成功,保存按钮启用", "errors": [] } ], "passed": 3, "failed": 0, "warnings": 0 }, "Settings - 外观标签页": { "tests": [ { "name": "外观偏好显示", "status": "passed", "details": "主题和语言切换显示正常", "errors": [] }, { "name": "主题切换", "status": "passed", "details": "深色主题切换成功", "errors": [] } ], "passed": 2, "failed": 0, "warnings": 0 }, "Settings - 安全标签页": { "tests": [ { "name": "安全标签页显示", "status": "passed", "details": "所有区块显示正常", "errors": [] }, { "name": "2FA 开关禁用", "status": "passed", "details": "2FA 开关已禁用('即将推出' 状态)", "errors": [] }, { "name": "密码修改验证", "status": "passed", "details": "错误密码触发失败提示", "errors": [] }, { "name": "密码强度指示器", "status": "passed", "details": "强度指示器工作正常", "errors": [] }, { "name": "登出其他会话按钮", "status": "passed", "details": "按钮显示正常", "errors": [] } ], "passed": 5, "failed": 0, "warnings": 0 }, "Settings - AI 标签页": { "tests": [ { "name": "AI 标签页显示", "status": "passed", "details": "管理员可见 AI 服务商配置", "errors": [] } ], "passed": 1, "failed": 0, "warnings": 0 }, "Admin Settings 页面": { "tests": [ { "name": "页面加载", "status": "passed", "details": "HTTP 200", "errors": [] }, { "name": "卡片显示", "status": "passed", "details": "4 个卡片及所有字段显示正常", "errors": [] }, { "name": "dirty 检测", "status": "passed", "details": "dirty 检测和重置功能正常", "errors": [] }, { "name": "保存和重置", "status": "warning", "details": "未检测到 toast", "errors": [] } ], "passed": 3, "failed": 0, "warnings": 1 } } }, "teacher": { "label": "教师", "categories": { "Profile 页面": { "tests": [ { "name": "页面加载", "status": "passed", "details": "HTTP 200", "errors": [] }, { "name": "个人信息卡片", "status": "passed", "details": "所有字段显示正常", "errors": [] }, { "name": "账户信息卡片", "status": "passed", "details": "所有字段显示正常", "errors": [] }, { "name": "头像上传组件", "status": "passed", "details": "组件渲染正常", "errors": [] }, { "name": "教师概览", "status": "passed", "details": "教师概览区块显示", "errors": [] }, { "name": "编辑资料链接", "status": "passed", "details": "链接指向 /settings", "errors": [] } ], "passed": 6, "failed": 0, "warnings": 0 }, "Settings 页面": { "tests": [ { "name": "页面加载", "status": "passed", "details": "HTTP 200", "errors": [] }, { "name": "标签页显示", "status": "passed", "details": "所有标签页显示正常", "errors": [] } ], "passed": 2, "failed": 0, "warnings": 0 }, "Settings - 通用标签页": { "tests": [ { "name": "邮箱字段禁用", "status": "passed", "details": "邮箱字段已禁用", "errors": [] }, { "name": "个人资料表单显示", "status": "passed", "details": "表单字段完整", "errors": [] }, { "name": "个人资料表单提交", "status": "passed", "details": "保存成功", "errors": [] }, { "name": "角色快捷链接", "status": "passed", "details": "教师快捷链接显示", "errors": [] } ], "passed": 4, "failed": 0, "warnings": 0 }, "Settings - 通知标签页": { "tests": [ { "name": "保存按钮 dirty 检测", "status": "passed", "details": "初始状态保存按钮已禁用", "errors": [] }, { "name": "通知偏好显示", "status": "passed", "details": "所有区块显示正常", "errors": [] }, { "name": "切换通知开关", "status": "passed", "details": "开关切换成功,保存按钮启用", "errors": [] } ], "passed": 3, "failed": 0, "warnings": 0 }, "Settings - 外观标签页": { "tests": [ { "name": "外观偏好显示", "status": "passed", "details": "主题和语言切换显示正常", "errors": [] }, { "name": "主题切换", "status": "passed", "details": "深色主题切换成功", "errors": [] } ], "passed": 2, "failed": 0, "warnings": 0 }, "Settings - 安全标签页": { "tests": [ { "name": "安全标签页显示", "status": "passed", "details": "所有区块显示正常", "errors": [] }, { "name": "2FA 开关禁用", "status": "passed", "details": "2FA 开关已禁用('即将推出' 状态)", "errors": [] }, { "name": "密码修改验证", "status": "passed", "details": "错误密码触发失败提示", "errors": [] }, { "name": "密码强度指示器", "status": "passed", "details": "强度指示器工作正常", "errors": [] }, { "name": "登出其他会话按钮", "status": "passed", "details": "按钮显示正常", "errors": [] } ], "passed": 5, "failed": 0, "warnings": 0 }, "Settings - AI 标签页": { "tests": [ { "name": "AI 标签页权限", "status": "passed", "details": "teacher 角色无法访问 AI 标签页(符合预期)", "errors": [] } ], "passed": 1, "failed": 0, "warnings": 0 }, "Admin Settings 页面": { "tests": [ { "name": "权限控制", "status": "passed", "details": "teacher 角色被拒绝访问", "errors": [] }, { "name": "卡片显示", "status": "passed", "details": "teacher 角色跳过", "errors": [] }, { "name": "dirty 检测", "status": "passed", "details": "teacher 角色跳过", "errors": [] }, { "name": "保存和重置", "status": "passed", "details": "teacher 角色跳过", "errors": [] } ], "passed": 4, "failed": 0, "warnings": 0 } } }, "student": { "label": "学生", "categories": { "Profile 页面": { "tests": [ { "name": "页面加载", "status": "passed", "details": "HTTP 200", "errors": [] }, { "name": "个人信息卡片", "status": "passed", "details": "所有字段显示正常", "errors": [] }, { "name": "账户信息卡片", "status": "passed", "details": "所有字段显示正常", "errors": [] }, { "name": "头像上传组件", "status": "passed", "details": "组件渲染正常", "errors": [] }, { "name": "学生概览", "status": "passed", "details": "学生概览区块显示", "errors": [] }, { "name": "编辑资料链接", "status": "passed", "details": "链接指向 /settings", "errors": [] } ], "passed": 6, "failed": 0, "warnings": 0 }, "Settings 页面": { "tests": [ { "name": "页面加载", "status": "passed", "details": "HTTP 200", "errors": [] }, { "name": "标签页显示", "status": "passed", "details": "所有标签页显示正常", "errors": [] } ], "passed": 2, "failed": 0, "warnings": 0 }, "Settings - 通用标签页": { "tests": [ { "name": "邮箱字段禁用", "status": "passed", "details": "邮箱字段已禁用", "errors": [] }, { "name": "个人资料表单显示", "status": "passed", "details": "表单字段完整", "errors": [] }, { "name": "个人资料表单提交", "status": "passed", "details": "保存成功", "errors": [] }, { "name": "角色快捷链接", "status": "passed", "details": "学生快捷链接显示", "errors": [] } ], "passed": 4, "failed": 0, "warnings": 0 }, "Settings - 通知标签页": { "tests": [ { "name": "保存按钮 dirty 检测", "status": "passed", "details": "初始状态保存按钮已禁用", "errors": [] }, { "name": "通知偏好显示", "status": "passed", "details": "所有区块显示正常", "errors": [] }, { "name": "切换通知开关", "status": "passed", "details": "开关切换成功,保存按钮启用", "errors": [] } ], "passed": 3, "failed": 0, "warnings": 0 }, "Settings - 外观标签页": { "tests": [ { "name": "外观偏好显示", "status": "passed", "details": "主题和语言切换显示正常", "errors": [] }, { "name": "主题切换", "status": "passed", "details": "深色主题切换成功", "errors": [] } ], "passed": 2, "failed": 0, "warnings": 0 }, "Settings - 安全标签页": { "tests": [ { "name": "安全标签页显示", "status": "passed", "details": "所有区块显示正常", "errors": [] }, { "name": "2FA 开关禁用", "status": "passed", "details": "2FA 开关已禁用('即将推出' 状态)", "errors": [] }, { "name": "密码修改验证", "status": "passed", "details": "错误密码触发失败提示", "errors": [] }, { "name": "密码强度指示器", "status": "passed", "details": "强度指示器工作正常", "errors": [] }, { "name": "登出其他会话按钮", "status": "passed", "details": "按钮显示正常", "errors": [] } ], "passed": 5, "failed": 0, "warnings": 0 }, "Settings - AI 标签页": { "tests": [ { "name": "AI 标签页权限", "status": "passed", "details": "student 角色无法访问 AI 标签页(符合预期)", "errors": [] } ], "passed": 1, "failed": 0, "warnings": 0 }, "Admin Settings 页面": { "tests": [ { "name": "权限控制", "status": "passed", "details": "student 角色被拒绝访问", "errors": [] }, { "name": "卡片显示", "status": "passed", "details": "student 角色跳过", "errors": [] }, { "name": "dirty 检测", "status": "passed", "details": "student 角色跳过", "errors": [] }, { "name": "保存和重置", "status": "passed", "details": "student 角色跳过", "errors": [] } ], "passed": 4, "failed": 0, "warnings": 0 } } }, "parent": { "label": "家长", "categories": { "Profile 页面": { "tests": [ { "name": "页面加载", "status": "passed", "details": "HTTP 200", "errors": [] }, { "name": "个人信息卡片", "status": "passed", "details": "所有字段显示正常", "errors": [] }, { "name": "账户信息卡片", "status": "passed", "details": "所有字段显示正常", "errors": [] }, { "name": "头像上传组件", "status": "passed", "details": "组件渲染正常", "errors": [] }, { "name": "角色概览", "status": "passed", "details": "parent 角色无专属概览,跳过", "errors": [] }, { "name": "编辑资料链接", "status": "passed", "details": "链接指向 /settings", "errors": [] } ], "passed": 6, "failed": 0, "warnings": 0 }, "Settings 页面": { "tests": [ { "name": "页面加载", "status": "passed", "details": "HTTP 200", "errors": [] }, { "name": "标签页显示", "status": "passed", "details": "所有标签页显示正常", "errors": [] } ], "passed": 2, "failed": 0, "warnings": 0 }, "Settings - 通用标签页": { "tests": [ { "name": "邮箱字段禁用", "status": "passed", "details": "邮箱字段已禁用", "errors": [] }, { "name": "个人资料表单显示", "status": "passed", "details": "表单字段完整", "errors": [] }, { "name": "个人资料表单提交", "status": "passed", "details": "保存成功", "errors": [] }, { "name": "角色快捷链接", "status": "passed", "details": "家长快捷链接显示", "errors": [] } ], "passed": 4, "failed": 0, "warnings": 0 }, "Settings - 通知标签页": { "tests": [ { "name": "保存按钮 dirty 检测", "status": "passed", "details": "初始状态保存按钮已禁用", "errors": [] }, { "name": "通知偏好显示", "status": "passed", "details": "所有区块显示正常", "errors": [] }, { "name": "切换通知开关", "status": "passed", "details": "开关切换成功,保存按钮启用", "errors": [] } ], "passed": 3, "failed": 0, "warnings": 0 }, "Settings - 外观标签页": { "tests": [ { "name": "外观偏好显示", "status": "passed", "details": "主题和语言切换显示正常", "errors": [] }, { "name": "主题切换", "status": "passed", "details": "深色主题切换成功", "errors": [] } ], "passed": 2, "failed": 0, "warnings": 0 }, "Settings - 安全标签页": { "tests": [ { "name": "安全标签页显示", "status": "passed", "details": "所有区块显示正常", "errors": [] }, { "name": "2FA 开关禁用", "status": "passed", "details": "2FA 开关已禁用('即将推出' 状态)", "errors": [] }, { "name": "密码修改验证", "status": "passed", "details": "错误密码触发失败提示", "errors": [] }, { "name": "密码强度指示器", "status": "passed", "details": "强度指示器工作正常", "errors": [] }, { "name": "登出其他会话按钮", "status": "passed", "details": "按钮显示正常", "errors": [] } ], "passed": 5, "failed": 0, "warnings": 0 }, "Settings - AI 标签页": { "tests": [ { "name": "AI 标签页权限", "status": "passed", "details": "parent 角色无法访问 AI 标签页(符合预期)", "errors": [] } ], "passed": 1, "failed": 0, "warnings": 0 }, "Admin Settings 页面": { "tests": [ { "name": "权限控制", "status": "passed", "details": "parent 角色被拒绝访问", "errors": [] }, { "name": "卡片显示", "status": "passed", "details": "parent 角色跳过", "errors": [] }, { "name": "dirty 检测", "status": "passed", "details": "parent 角色跳过", "errors": [] }, { "name": "保存和重置", "status": "passed", "details": "parent 角色跳过", "errors": [] } ], "passed": 4, "failed": 0, "warnings": 0 } } } }, "failures": [] }