Skip to content

10. 部署验收

不要以“首页能打开”作为唯一成功标准。完整验收必须覆盖静态页面、Functions、数据库写入、权限、班级调度和 PDF。

1. 基础访问

分别使用学校网络和手机移动数据完成:

  • [ ] 自定义域名可以通过 HTTPS 打开
  • [ ] 首页样式、图标和字体基本正常
  • [ ] /api/time 返回有效 JSON
  • [ ] 刷新 /exam 不出现 Vercel 404
  • [ ] 刷新 /admin 能进入登录或后台
  • [ ] 浏览器控制台没有持续重复的网络错误

2. 管理员登录

  1. 访问 /login
  2. 使用初始化后的管理员账号登录。
  3. 确认进入管理后台。
  4. 退出登录。
  5. 确认再次打开 /admin 时需要重新登录。

不要在公共大屏浏览器中保存超级管理员密码。

3. 数据库写入

创建一个仅用于验收的测试考试:

text
名称:部署验收测试
开始时间:当前时间之后 30 分钟
结束时间:开始后 30 分钟
范围:一个测试班级或当前班级

保存后刷新后台。测试考试仍然存在,说明数据已写入 Neon,而不是只保存在当前页面内存中。

4. 班级绑定和大屏

  1. 返回首页。
  2. 选择测试考试适用的年级和班级。
  3. 打开考试大屏。
  4. 确认显示正确考试名称和倒计时。
  5. 改为不在考试范围内的班级。
  6. 确认不会错误显示该班级无权看到的安排。

验收后删除测试考试,避免正式使用时误显示。

5. 周测调度

如果学校会使用周测:

  1. 创建一个测试周测计划;
  2. 指定正确班级、星期和时间;
  3. 检查统一周表或 A/B 周逻辑;
  4. 检查学期开始日期是否导致周次正确;
  5. 查看未来两周日历;
  6. 验证大型考试冲突时的调度结果。

6. PDF 下载

打开当前班级的“考试安排预览”:

  • [ ] 页面显示完整校名和班级
  • [ ] 日期与时间正确
  • [ ] 点击下载能生成 A4 PDF
  • [ ] PDF 只有预期页数,没有额外黑页
  • [ ] 中文字体、数字和水印正常
  • [ ] 手机和电脑生成结果可读

下载采用固定 210mm × 297mm A4 渲染副本,不依赖浏览器打印对话框。

7. 权限验收

至少创建一个非超级管理员测试账号:

  1. 创建班级管理员或只读用户;
  2. 只授权一个年级或班级;
  3. 使用无痕窗口登录该账号;
  4. 确认看不到未授权范围;
  5. 尝试访问无权限模块,确认被拒绝;
  6. 测试完成后停用或删除测试账号。

权限验收不能只看菜单是否隐藏。关键写操作还应确认 API 返回权限拒绝。

8. PWA 与离线表现

支持的浏览器可能提示添加到桌面。安装后检查:

  • 应用图标是否正确;
  • 从桌面启动是否使用独立窗口;
  • 更新部署后是否出现更新提示;
  • 短时断网时是否保留已有只读数据;
  • 恢复网络后能否重新同步。

离线缓存不是数据库备份。离线时不要依赖尚未成功同步的管理写操作。

9. 验收记录

建议保存以下记录,但不要包含密码或连接串:

项目记录内容
验收日期实际测试日期
Novora 版本设置页显示的版本
自定义域名正式访问地址
测试网络学校网络、移动运营商
测试设备电脑、教室大屏、手机
负责人部署和验收人员
未解决问题现象、请求 ID、临时措施

全部核心项目通过后,再进入正式上线配置。

下一章:正式上线 →

Novora 部署与维护文档