Back to Lobehub

Page 模块 E2E 测试覆盖

e2e/src/features/page/README.md

2.1.566.2 KB
Original Source

Page 模块 E2E 测试覆盖

本目录包含 Page(文稿)模块的所有 E2E 测试用例。

模块概述

Page 模块是 LobeHub 的文档管理功能,允许用户创建、编辑和管理文稿页面。

路由: /page, /page/[id]

功能清单与测试覆盖

1. 侧边栏 - 文稿列表管理

功能点描述优先级状态测试文件
创建文稿点击 + 按钮创建新文稿P0crud.feature
重命名文稿右键菜单 / 三点菜单重命名P0crud.feature
复制文稿复制文稿(自动添加 Copy 后缀)P1crud.feature
删除文稿删除文稿(带确认弹窗)P0crud.feature
复制全文复制文稿内容到剪贴板P2
列表分页设置设置显示数量(20/40/60/100)P2
全部文稿抽屉打开完整列表 + 搜索P2
搜索文稿按标题 / 内容搜索过滤P1

2. 编辑器 - 文稿头部

功能点描述优先级状态测试文件
返回按钮返回上一页P2
标题编辑大标题输入框,自动保存P0editor-meta.feature
Emoji 选择点击选择 / 更换 / 删除图标P1editor-meta.feature
自动保存提示显示保存状态P2
全宽模式切换大屏幕下切换全宽 / 定宽P2
复制链接复制文稿 URLP2
导出 Markdown导出为 .md 文件P2
页面信息显示最后编辑时间P2

3. 编辑器 - 富文本编辑

功能点描述优先级状态测试文件
基础文本输入输入和编辑文本P0editor-content.feature
斜杠命令 (/)打开命令菜单P1editor-content.feature
标题 H1/H2/H3插入标题P1editor-content.feature
任务列表插入待办事项P2editor-content.feature
无序列表插入项目符号列表P2editor-content.feature
有序列表插入编号列表P2
图片上传插入图片P2
分隔线插入水平分隔线P2
表格插入表格P2
代码块插入代码块(带语法高亮)P2🚧editor-content.feature
LaTeX 公式插入数学公式P2
文本加粗使用快捷键加粗P1editor-content.feature
文本斜体使用快捷键斜体P2editor-content.feature

4. Copilot 侧边栏

功能点描述优先级状态测试文件
打开 / 关闭面板展开 / 收起 CopilotP1copilot.feature
Ask Copilot选中文本后询问P0copilot.feature
Agent 切换选择不同的 AgentP2
新建话题创建新的对话话题P2
话题历史查看和切换历史话题P2
对话交互发送消息、接收回复P0copilot.feature
模型选择切换使用的模型P2
文件上传拖放上传文件P2

测试文件结构

e2e/src/features/page/
├── README.md              # 本文档
├── crud.feature           # 侧边栏 CRUD 操作 (5 scenarios)
├── editor-meta.feature    # 编辑器元数据(标题、Emoji)(6 scenarios)
└── editor-content.feature # 富文本编辑功能 (8 scenarios)

测试统计

  • 总场景数: 19 (通过) + 1 (跳过)
  • 总步骤数: 109+
  • 执行时间: ~3 分钟

测试执行

bash
# 运行 Page 模块所有测试
cd e2e
BASE_URL=http://localhost:3006 \
  DATABASE_URL=postgresql://postgres:postgres@localhost:5433/postgres \
  pnpm exec cucumber-js --config cucumber.config.js --tags "@page and not @skip"

# 运行特定测试
pnpm exec cucumber-js --config cucumber.config.js --tags "@PAGE-CREATE-001"

# 调试模式(显示浏览器)
HEADLESS=false pnpm exec cucumber-js --config cucumber.config.js --tags "@PAGE-TITLE-001"

状态说明

  • ✅ 已完成 - 测试用例已实现并通过
  • ⏳ 待实现 - 功能已识别,测试待编写
  • 🚧 进行中 - 测试用例正在开发中或需要修复

已知问题

  1. 代码块测试 (@PAGE-SLASH-005): 斜杠命令 /codeblock 触发不稳定,已标记 @skip

更新记录

日期更新内容
2025-01-12初始化功能清单,完成侧边栏 CRUD
2025-01-12完成编辑器标题 / Emoji 测试 (6 scenarios)
2025-01-12完成富文本编辑测试 (8 scenarios,1 跳过)