Files
ctms/docs/guides/role-uat/01-ADMIN-系统管理员测试手册.md
T
2026-05-21 17:25:25 +08:00

9.5 KiB
Raw Blame History

ADMIN 系统管理员测试手册

1. 角色定位

ADMIN 负责系统级治理,包括账号、项目、中心、成员、权限和审计。ADMIN 不是项目岗位角色,但必须能完成项目初始化,并具备项目内 PM 操作的兜底访问能力。

2. 测试前置

  • 使用 uat-admin@example.com 登录。
  • 确认账号状态为启用。
  • 参考 00-测试总说明.md 准备 UAT 数据。
  • 每个高风险操作执行后记录审计日志是否生成。

3. 核心场景

场景 1:登录并进入管理后台

适用角色:ADMIN
前置条件:管理员账号已启用。
操作路径:登录页 -> 管理后台。

测试步骤:

  1. 打开系统登录页。
  2. 输入 uat-admin@example.com 和测试密码。
  3. 点击登录。
  4. 确认进入管理后台或可从导航进入管理后台。

测试数据:

  • 账号:uat-admin@example.com

期望结果:

  • 登录成功。
  • 可看到账号管理、项目管理、权限管理、审计日志等入口。
  • 未选择项目时不影响系统级管理功能。

通过标准:

  • ADMIN 无需项目成员身份即可访问管理后台。

场景 2:创建或确认测试用户

适用角色:ADMIN
前置条件:已进入账号管理。
操作路径:管理后台 -> 账号管理。

测试步骤:

  1. 进入账号管理列表。
  2. 搜索 uat-pm@example.com
  3. 若账号不存在,点击新建用户。
  4. 填写邮箱、姓名、角色、科室和初始密码。
  5. 保存后确认用户状态为启用。
  6. 按同样方式确认 CRA、PV、MEDICAL_REVIEW、IMP、QA、无项目角色用户。

测试数据:

  • uat-pm@example.comPM
  • uat-cra@example.comCRA
  • uat-pv@example.comPV
  • uat-medical@example.comMEDICAL_REVIEW
  • uat-imp@example.comIMP
  • uat-qa@example.comQA
  • uat-no-role@example.com:普通启用用户或任一非项目成员账号

期望结果:

  • 所有测试用户存在且状态为启用。
  • 用户角色与总说明一致。
  • 用户创建或更新操作写入审计日志。

通过标准:

  • 每个角色账号均可用于后续登录测试。

场景 3:审核自助注册用户

适用角色:ADMIN
前置条件:存在一个待审核注册用户。
操作路径:登录页 -> 注册;管理后台 -> 用户审核。

测试步骤:

  1. 退出 ADMIN。
  2. 在注册页提交一个测试账号,例如 uat-pending@example.com
  3. 返回 ADMIN 登录。
  4. 进入用户审核页面。
  5. 找到待审核用户。
  6. 点击通过。
  7. 退出后使用该用户登录。

测试数据:

  • 注册账号:uat-pending@example.com

期望结果:

  • 注册后用户状态为待审核,不能直接登录。
  • ADMIN 审核通过后用户可以登录。
  • 审核动作写入审计日志。

通过标准:

  • 待审核用户被正确拦截,审核通过后状态正确变更。

场景 4:禁用用户并验证登录拦截

适用角色:ADMIN
前置条件:存在启用状态测试用户。
操作路径:管理后台 -> 账号管理。

测试步骤:

  1. 搜索 uat-no-role@example.com
  2. 执行禁用操作。
  3. 退出 ADMIN。
  4. 使用 uat-no-role@example.com 登录。
  5. 返回 ADMIN,将该用户重新启用。

测试数据:

  • 用户:uat-no-role@example.com

期望结果:

  • 禁用后该用户不能登录或不能继续访问系统。
  • 重新启用后可恢复登录。
  • 禁用和启用动作写入审计日志。

通过标准:

  • 用户状态能正确控制登录访问。

场景 5:创建 UAT 项目

适用角色:ADMIN
前置条件:ADMIN 已登录。
操作路径:管理后台 -> 项目管理 -> 新建项目。

测试步骤:

  1. 进入项目管理。
  2. 点击新建项目。
  3. 填写项目名称、编号、申办方、适应症等必填信息。
  4. 保存。
  5. 返回项目列表搜索该项目。

测试数据:

  • 项目名称:UAT-CTMS-角色功能验收项目
  • 项目编号:UAT-CTMS-RUAT-001

期望结果:

  • 项目创建成功。
  • 项目列表可查询到该项目。
  • 项目详情显示与输入一致。
  • 项目创建动作写入审计日志。

通过标准:

  • 后续角色可选择该项目或被加入该项目。

场景 6:创建中心并绑定 CRA

适用角色:ADMIN
前置条件:UAT 项目已存在,CRA 用户已启用。
操作路径:管理后台 -> 项目管理 -> 项目详情 -> 中心管理。

测试步骤:

  1. 进入 UAT 项目的中心管理。
  2. 新建 UAT-中心-01
  3. 填写机构名称、中心编号、PI、联系电话等字段。
  4. 保存。
  5. 新建 UAT-中心-02
  6. 在中心 CRA 绑定页面,将 uat-cra@example.com 绑定到 UAT-中心-01

测试数据:

  • 中心 1UAT-中心-01
  • 中心 2UAT-中心-02
  • CRAuat-cra@example.com

期望结果:

  • 两个中心创建成功。
  • UAT-中心-01 显示已绑定 CRA。
  • 中心创建和 CRA 绑定动作写入审计日志。

通过标准:

  • CRA 后续能看到或使用绑定中心完成受试者测试。

场景 7:添加项目成员并分配 6 个项目角色

适用角色:ADMIN
前置条件:UAT 项目和测试用户均已存在。
操作路径:管理后台 -> 权限管理 -> 项目权限配置 -> 成员。

测试步骤:

  1. 进入 UAT 项目的项目权限配置。
  2. 打开成员配置。
  3. 添加 PM、CRA、PV、MEDICAL_REVIEW、IMP、QA 六个账号。
  4. 分别设置对应项目角色。
  5. 确认 uat-no-role@example.com 不在项目成员中。

测试数据:

  • 参考总说明测试账号表。

期望结果:

  • 六个业务角色均成为 UAT 项目成员。
  • 每个成员角色正确。
  • 非项目成员账号不在项目成员列表中。
  • 成员变更写入审计日志。

通过标准:

  • 六个业务角色后续可进入项目工作区。

场景 8:查看和调整项目权限矩阵

适用角色:ADMIN
前置条件:UAT 项目已有成员。
操作路径:管理后台 -> 权限管理 -> 项目权限配置。

测试步骤:

  1. 进入项目权限配置。
  2. 查看角色权限矩阵。
  3. 确认 PM 权限全部放行。
  4. 临时关闭 CRA 的“创建参与者”权限。
  5. 保存权限。
  6. 使用 CRA 登录,尝试创建受试者。
  7. 返回 ADMIN,恢复 CRA 的“创建参与者”权限并保存。
  8. 使用 CRA 再次验证创建受试者入口恢复。

测试数据:

  • 项目:UAT-CTMS-角色功能验收项目
  • 角色:CRA
  • 权限:创建参与者

期望结果:

  • PM 权限不可被实际削弱或始终具备项目内全权限。
  • CRA 权限关闭后无法创建受试者。
  • CRA 权限恢复后可继续创建受试者。
  • 权限变更写入审计日志。

通过标准:

  • 权限变更能被真实角色用户感知,且不会破坏 PM 全权限规则。

场景 9:锁定和解锁项目

适用角色:ADMIN
前置条件:UAT 项目未锁定。
操作路径:管理后台 -> 项目管理 -> 项目详情。

测试步骤:

  1. 打开 UAT 项目详情。
  2. 执行锁定项目。
  3. 使用 PM 或 CRA 登录并进入项目。
  4. 尝试执行一个写操作,例如新建受试者或保存立项配置。
  5. 返回 ADMIN 解锁项目。
  6. 使用同一角色再次尝试写操作。

测试数据:

  • 项目:UAT-CTMS-角色功能验收项目

期望结果:

  • 锁定后项目只读或写操作被明确阻止。
  • 解锁后写操作恢复。
  • 锁定和解锁动作写入审计日志。

通过标准:

  • 项目锁定规则对所有项目角色生效。

场景 10:查看和导出审计日志

适用角色:ADMIN
前置条件:已完成若干账号、项目、权限或业务操作。
操作路径:管理后台 -> 审计日志。

测试步骤:

  1. 进入审计日志。
  2. 按操作人筛选 uat-admin@example.com
  3. 按对象或事件筛选项目、用户、权限变更记录。
  4. 设置时间范围。
  5. 导出系统审计日志。
  6. 如支持项目审计,选择 UAT 项目导出项目审计日志。

测试数据:

  • 操作人:uat-admin@example.com
  • 项目:UAT-CTMS-角色功能验收项目

期望结果:

  • 审计日志列表可按条件筛选。
  • 导出前出现敏感信息确认提示。
  • 导出文件包含筛选范围内的关键操作。

通过标准:

  • 管理员能追溯用户、项目、权限、锁定等关键动作。

场景 11:验证 ADMIN 项目内兜底权限

适用角色:ADMIN
前置条件:UAT 项目已存在,ADMIN 未必是项目成员。
操作路径:项目工作区 -> 项目总览 / 受试者 / 费用 / 立项配置。

测试步骤:

  1. 以 ADMIN 身份进入 UAT 项目。
  2. 查看项目总览。
  3. 尝试进入受试者管理。
  4. 尝试进入合同费用管理。
  5. 尝试进入立项配置或里程碑页面。

测试数据:

  • 项目:UAT-CTMS-角色功能验收项目

期望结果:

  • ADMIN 可访问项目内主要页面。
  • ADMIN 不因缺少项目成员身份被拒绝。
  • ADMIN 写操作能力与 PM 保持一致。

通过标准:

  • ADMIN 具备系统治理和项目内兜底能力。

4. ADMIN 权限边界核查

检查项 期望结果
待审核用户登录 被拒绝
禁用用户登录 被拒绝
非项目成员访问 UAT 项目 被拒绝或只能看到允许范围
项目锁定后业务写操作 被拒绝
权限关闭后对应角色操作 被拒绝
权限恢复后对应角色操作 恢复
审计日志导出 需要确认,且可追溯

5. 完成标准

  • 所有测试账号准备完成。
  • UAT 项目、中心、成员、权限准备完成。
  • 项目锁定、权限变更、审计日志三个高风险规则通过。
  • 后续 6 个项目角色可以开始业务验收。