Skip to content

优化 E2E 测试执行效率,修复 navigator.clipboard 权限失败#1459

Open
cyfung1031 wants to merge 2 commits into
mainfrom
pref/e2e/001
Open

优化 E2E 测试执行效率,修复 navigator.clipboard 权限失败#1459
cyfung1031 wants to merge 2 commits into
mainfrom
pref/e2e/001

Conversation

@cyfung1031
Copy link
Copy Markdown
Collaborator

@cyfung1031 cyfung1031 commented May 23, 2026

Summary

优化 E2E 测试的执行效率,并调整 Playwright 相关命令与浏览器权限配置,降低测试等待成本并提升脚本安装辅助流程的稳定性。

Changes

  • 将 Playwright 相关命令统一改为 pnpm exec

    • 新增 test:e2e:install,用于安装 Chromium
    • CI 中安装 Playwright Chromium 的步骤改为复用 pnpm test:e2e:install
    • test:e2e / test:e2e:ui 统一使用 pnpm exec playwright ...
  • 缩短 E2E 测试中的等待时间

    • 将多处 30s / 15s / 10s / 5s / 2s / 1s 等等待时间压缩到百毫秒级
    • 覆盖 popup、options、settings、install、script editor、script management、GM API 等测试场景
    • 减少失败路径和元素不存在场景下的无效等待,提升整体反馈速度
  • 优化脚本安装辅助流程的稳定性

    • 聚焦 Monaco Editor 的真实 textarea,避免点击渲染层后焦点仍停留在 body
    • 保留通过剪贴板写入脚本内容的方式
    • 在 Playwright 配置中显式授予 clipboard-read / clipboard-write 权限,避免剪贴板权限导致的 E2E 不稳定问题
    • 保留内容变更检测与保存成功校验逻辑

Motivation

当前 E2E 测试中存在较多偏保守的长 timeout 和固定等待,导致测试反馈较慢。

同时,脚本安装辅助函数依赖剪贴板写入 Monaco Editor,在浏览器 / CI 环境中如果未显式授予剪贴板权限,可能出现权限相关的不稳定问题。

本 PR 通过缩短等待时间、统一 Playwright 命令入口,并补充剪贴板权限配置,提升 E2E 测试的执行速度和可靠性。

Testing

相关 E2E 命令:

  • pnpm test:e2e:install
  • pnpm test:e2e
  • pnpm test:e2e:ui

Notes

本 PR 主要影响测试代码、Playwright 配置与 CI 脚本,不涉及业务逻辑变更。

本 PR 未调整 E2E 覆盖范围,仅优化现有 E2E 用例的执行等待与辅助函数稳定性。

@cyfung1031 cyfung1031 marked this pull request as draft May 23, 2026 05:09
@CodFrm
Copy link
Copy Markdown
Member

CodFrm commented May 23, 2026

感觉只有核心流程才做e2e,太重了,其它的用单元测试就行,有点乱了

@cyfung1031 cyfung1031 changed the title perf: e2e 优化 E2E 测试执行效率,并修复脚本安装流程中依赖 navigator.clipboard 可能导致的权限失败问题 May 23, 2026
@cyfung1031 cyfung1031 marked this pull request as ready for review May 23, 2026 05:58
@cyfung1031
Copy link
Copy Markdown
Collaborator Author

感觉只有核心流程才做e2e,太重了,其它的用单元测试就行,有点乱了

没更改

@cyfung1031 cyfung1031 changed the title 优化 E2E 测试执行效率,并修复脚本安装流程中依赖 navigator.clipboard 可能导致的权限失败问题 优化 E2E 测试执行效率,修复 navigator.clipboard 权限失败 May 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants