创建测试账号指南

概述

本文档说明如何创建 MBE Desktop 测试所需的所有角色账号。所有账号使用邮箱格式作为用户名。


测试账号列表

角色 邮箱 密码 角色代码 说明
开发者 test_dev@example.com test123 developer ⭐ 主要用户
注册用户 test_user@example.com test123 user 普通用户
企业用户 test_enterprise@example.com test123 enterprise 企业用户
运营员 test_operator@example.com test123 operator 运营权限(只读)
管理员 test_admin@example.com test123 admin 管理权限
超级管理员 test_super@example.com test123 super_admin 最高权限

方法一:使用 Python 脚本(推荐)

前置条件

  • Python 3.7+
  • requests 库:pip install requests
  • 后端服务运行在 http://localhost:8000

执行步骤

  1. 运行脚本:
cd d:\Mises\mbe-desktop\scripts
python create_test_users.py
  1. 如果提示需要管理员权限:

    • 输入管理员邮箱和密码
    • 脚本将使用管理员 API 创建所有角色账号
    • 如果跳过,脚本会先创建为 user 角色,然后提示手动修改
  2. 查看结果:

    • 脚本会显示创建结果
    • 成功创建的账号可以直接使用
    • 需要修改角色的账号会提示手动操作

方法二:使用 PowerShell 脚本(Windows)

执行步骤

  1. 打开 PowerShell:
cd d:\Mises\mbe-desktop\scripts
.\create_test_users.ps1
  1. 查看结果:
    • 脚本会自动创建所有账号
    • 显示创建结果统计

方法三:使用 Shell 脚本(Linux/Mac)

执行步骤

  1. 添加执行权限:
chmod +x d:\Mises\mbe-desktop\scripts\create_test_users.sh
  1. 运行脚本:
cd d:\Mises\mbe-desktop\scripts
./create_test_users.sh

方法四:手动通过 API 创建

1. 创建普通用户(user 角色)

curl -X POST http://localhost:8000/api/v1/users/register \
  -H "Content-Type: application/json" \
  -d '{
    "email": "test_user@example.com",
    "password": "test123",
    "username": "test_user"
  }'

2. 创建开发者(developer 角色)

步骤 1: 先注册为普通用户

curl -X POST http://localhost:8000/api/v1/users/register \
  -H "Content-Type: application/json" \
  -d '{
    "email": "test_dev@example.com",
    "password": "test123"
  }'

步骤 2: 使用管理员账号登录,获取 admin_session

步骤 3: 更新用户角色为 developer

# 首先获取用户ID(需要管理员权限)
curl -X GET "http://localhost:8000/admin/api/users?search=test_dev@example.com" \
  -H "Cookie: admin_session=YOUR_ADMIN_SESSION"

# 然后更新角色(替换 {user_id} 为实际的用户ID)
curl -X POST "http://localhost:8000/admin/api/users/{user_id}/role" \
  -H "Content-Type: application/json" \
  -H "Cookie: admin_session=YOUR_ADMIN_SESSION" \
  -d '{
    "role": "developer"
  }'

3. 创建管理员账号(admin/super_admin 角色)

方法 A: 通过管理员后台创建(推荐)

  1. 使用超级管理员账号登录后台
  2. 进入用户管理页面
  3. 创建新用户,选择角色

方法 B: 通过数据库直接创建(需要数据库访问权限)

-- 注意:需要先对密码进行 bcrypt 哈希
INSERT INTO users (user_id, email, password_hash, nickname, role, status, created_at, updated_at)
VALUES (
  gen_random_uuid(),
  'test_admin@example.com',
  '$2b$12$...',  -- bcrypt 哈希后的密码
  '测试管理员',
  'admin',
  'active',
  NOW(),
  NOW()
);

方法五:通过前端注册(仅限 user 角色)

  1. 打开 MBE Desktop 应用
  2. 点击"注册"
  3. 填写邮箱和密码
  4. 提交注册

注意: 通过前端注册的账号默认角色为 user,需要管理员权限才能修改为其他角色。


验证账号创建

方法一:通过 API 验证

# 登录测试
curl -X POST http://localhost:8000/api/v1/users/login \
  -H "Content-Type: application/json" \
  -d '{
    "email": "test_dev@mbe.test",
    "password": "test123"
  }'

方法二:通过前端验证

  1. 打开 MBE Desktop 应用
  2. 使用测试账号登录
  3. 检查用户角色是否正确显示

常见问题

Q: 注册 API 返回"邮箱已注册"?

A: 账号已存在,可以直接使用,或删除后重新创建。

Q: 如何修改用户角色?

A:

  1. 使用管理员账号登录后台
  2. 进入用户管理页面
  3. 找到目标用户
  4. 修改角色

Q: 忘记密码怎么办?

A:

  • 如果有管理员权限,可以在后台重置密码
  • 或者删除账号后重新创建

Q: 如何批量创建账号?

A: 使用提供的 Python/PowerShell/Shell 脚本,可以批量创建所有测试账号。


测试账号使用

创建完成后,在 MBE Desktop 中使用以下账号登录:

开发者(主要用户)⭐

  • 邮箱: test_dev@example.com
  • 密码: test123
  • 用途: 测试知识库管理、文件上传等核心功能

注册用户

  • 邮箱: test_user@example.com
  • 密码: test123
  • 用途: 测试普通用户权限和数据隔离

企业用户

  • 邮箱: test_enterprise@example.com
  • 密码: test123
  • 用途: 测试企业用户功能

运营员

  • 邮箱: test_operator@example.com
  • 密码: test123
  • 用途: 测试只读权限

管理员

  • 邮箱: test_admin@example.com
  • 密码: test123
  • 用途: 测试管理功能

超级管理员

  • 邮箱: test_super@example.com
  • 密码: test123
  • 用途: 测试最高权限功能

注意事项

  1. 邮箱格式: 所有测试账号使用邮箱格式(xxx@example.com,使用有效的测试邮箱域名)
  2. 密码统一: 所有测试账号密码统一为 test123(便于测试)
  3. 角色权限: 不同角色有不同的权限,创建后需要验证角色是否正确
  4. 数据隔离: 确保不同角色的数据隔离正确
  5. 生产环境: ⚠️ 不要在生产环境使用这些测试账号

相关文档

  • TEST_EXECUTION_GUIDE.md - 测试执行指南
  • TEST_CHECKLIST.md - 测试检查清单
  • COMPREHENSIVE_TEST_PLAN.md - 完整测试计划

文档版本: 1.0
创建日期: 2026-02-08
维护人: MBE Team