بنقرة واحدة
infoq-admin-e2e
维护并执行本仓库 React/Vue 管理端 E2E 自动化,覆盖测试矩阵生成、真实图形验证码登录、动态路由只读 smoke、CRUD 模式设计、测试数据、cleanup、权限按钮断言和危险动作门禁。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
维护并执行本仓库 React/Vue 管理端 E2E 自动化,覆盖测试矩阵生成、真实图形验证码登录、动态路由只读 smoke、CRUD 模式设计、测试数据、cleanup、权限按钮断言和危险动作门禁。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
执行本仓库发布操作,覆盖版本升级、后端 Maven revision、前端 package 与小程序 manifest 版本、Docker 镜像标签、发布文档、DEPLOY_ID 部署批次示例、docs 同步、版本断言和发布前验证。适用于升级版本号、发布到指定 x.y.z、同步 README/docker/pom/package/manifest/doc/backend config/test 与 docs 站点版本。
在本仓库执行可复现的本地、WSL2、macOS 或 Linux Docker Compose 部署验证,覆盖免费商用容器运行时基线:WSL2 内 Docker CE、macOS Colima、原生 Linux Docker CE,以及 Docker MySQL/Redis/MinIO、后端 script/bin/infoq.sh、前端 script/bin/deploy-frontend.sh、nginx 网关、容器健康检查、localhost smoke、日志证据和常见阻断处理。适用于用户要求部署项目、验证部署文档或脚本、在 WSL2 Debian/macOS Colima/Linux Docker CE 中拉起完整栈、排查容器部署失败、确认 Vue/React/React Pro/nginx/backend 是否可访问,或沉淀部署验证结论。
本仓库通用浏览器自动化技能。凡涉及网页交互、登录态注入、受保护路由访问、截图、console/pageerror 采集、渲染校验与浏览器证据留存时均应使用。默认执行路径为仓库内跨平台 `playwright-cli` / `chrome-devtools-cli`,MCP 仅作显式 fallback。
为本仓库 React/React Pro/Vue admin 与 weapp 执行前端验证,覆盖单测、coverage、lint/build、admin 本地栈启动、登录态诊断、路由截图、console 检查、小程序 build-open 和 weapp smoke/e2e。适用于 React/React Pro/Vue 前端测试、运行态验证、路由回归和本地栈启动。
加载本仓库的静态项目参考信息,包括工作区布局、关键入口与配置路径、架构与命名规则、UTF-8 与包管理约定、构建/运行/测试/部署命令、分支与 PR 预期、以及工程/安全/验证标准。当用户询问项目结构、启动/构建/测试/部署流程、配置或入口文件、编码规范、质量规则、安全基线、测试策略,或任务需要仓库专属参考上下文且不应放入常驻 AGENTS 内存时使用。
编排本仓库高影响交付流程,覆盖 Acceptance Contract、OpenSpec、重大 UI/UX 门禁、跨工作区交付、插件治理计划和 active change 校验。适用于新功能、API 契约变更、跨工作区任务、明确要求 OpenSpec/subagent、多阶段 UI 审批或插件治理方案的场景。
| name | infoq-admin-e2e |
| description | 维护并执行本仓库 React/Vue 管理端 E2E 自动化,覆盖测试矩阵生成、真实图形验证码登录、动态路由只读 smoke、CRUD 模式设计、测试数据、cleanup、权限按钮断言和危险动作门禁。 |
本技能只负责一件事:管理端浏览器 E2E 的范围建模、真实登录 smoke 和写入型模式设计。它是领域型 SOP,不是通用浏览器工具;浏览器底层执行仍交给 infoq-browser-automate 或本 skill 自带脚本。
generate-case-matrix.mjs 和 validate-case-matrix.mjs。/auth/code + OCR + /auth/login 获取真实 token,使用共享入口 captcha_login.mjs;需要继续巡检动态路由时使用 run_admin_e2e.mjs。references/crud/* 并使用 run_notice_crud_e2e.mjs;执行三端安全模块全量 CRUD E2E 时使用 run_admin_crud_e2e.mjs。infoq-browser-automate;本 skill 负责业务范围和管理端专属流程。doc/tmp/infoq-admin-e2e/ 证据。生成矩阵:
node .codex/skills/infoq-admin-e2e/scripts/generate-case-matrix.mjs
node .codex/skills/infoq-admin-e2e/scripts/validate-case-matrix.mjs doc/test/frontend-web-automation/case-matrix.json
真实验证码 E2E:
node .codex/skills/infoq-admin-e2e/scripts/run_admin_e2e.mjs --client vue
node .codex/skills/infoq-admin-e2e/scripts/run_admin_e2e.mjs --client react
node .codex/skills/infoq-admin-e2e/scripts/run_admin_e2e.mjs --client react-pro
公告 CRUD E2E(仅限 application-local.yml 指向且已授权的测试数据库,测试数据使用 e2e_ 前缀并自动 cleanup):
node .codex/skills/infoq-admin-e2e/scripts/run_notice_crud_e2e.mjs --client vue
node .codex/skills/infoq-admin-e2e/scripts/run_notice_crud_e2e.mjs --client react
node .codex/skills/infoq-admin-e2e/scripts/run_notice_crud_e2e.mjs --client react-pro
全模块 CRUD E2E(仅限 application-local.yml 指向且已授权的测试数据库;默认覆盖 role,user,menu,dept,post,dict,config,notice,client,invite,ossConfig,job,online,使用 e2e_ 隔离数据并自动 cleanup):
node .codex/skills/infoq-admin-e2e/scripts/run_admin_crud_e2e.mjs --client vue
node .codex/skills/infoq-admin-e2e/scripts/run_admin_crud_e2e.mjs --client react
node .codex/skills/infoq-admin-e2e/scripts/run_admin_crud_e2e.mjs --client react-pro
可用 --modules role,user 缩小模块范围;报告会同时输出高副作用安全门禁:不删除非 e2e_ 数据、不清空日志、不触发定时任务“立即执行”、不触碰真实 OSS 对象上传/删除。在线强退只允许对当前 run 创建的 e2e_ 用户会话执行;缺少隔离 fixture 时记录 blocker,不伪造通过。
仅获取真实验证码登录 token:
node .codex/skills/infoq-admin-e2e/scripts/captcha_login.mjs --backend-url http://127.0.0.1:8080 --print-token
captcha_login.mjs 是 /auth/code + ddddocr + 算术验证码归一化 + 加密 /auth/login 的共享入口,run_admin_e2e.mjs 与 infoq-browser-automate 的 admin-route-probe 验证码 fallback 都复用它。证据默认写入 doc/tmp/infoq-admin-e2e/captcha-login/<run-id>/。
run_admin_e2e.mjs 默认只使用有管理端动态菜单的 route smoke 候选账号(admin、dept);captcha_login.mjs 可继续通过 --login-candidates 做独立账号登录诊断。不要把无动态路由权限的账号作为 route smoke 默认候选,否则会出现登录成功但无路由可巡检的假失败。
run_admin_e2e.mjs 默认会在完成、失败或中断后停止本 skill 启动的 backend/admin dev server;只有成功且显式传 --keep-stack-after 才保留联调栈,失败或中断仍必须收口。栈状态按 client 稳定记录在 doc/tmp/infoq-admin-e2e/stack/<vue|react|react-pro>/state.json,必须包含 pid、port、log、owned/reused 和 running/stopped/failed/interrupted 状态。
run_notice_crud_e2e.mjs 会启动或复用 backend + 指定管理端、通过真实验证码登录、在 /system/notice 执行 UI 新增/查询/编辑/删除,并用 API 与 MySQL 直连只读查询核对每一步;失败时先尝试 API cleanup,必要时仅对当前精确 e2e_ 标题执行 DB fallback cleanup。报告、截图、console、DB target、Java DB helper 和 cleanup 结果写入 doc/tmp/infoq-admin-e2e/<run-id>/。
run_admin_crud_e2e.mjs 会启动或复用 backend + 指定管理端、通过真实验证码登录,按安全模块顺序执行 UI 新增/查询/编辑/删除或模块可用的行删除/选择删除入口,并用 API 与 MySQL 直连只读查询核对 create/edit/delete;在线用户模块会创建本轮专属 e2e_ 用户、真实登录生成会话,只强退该会话后清理用户。它只清理当前 run 创建的精确 e2e_ 数据,不删除内置 admin、默认角色、默认菜单、默认部门、默认配置或非本轮数据;失败、中断和完成后都会收口 owned 栈并保留 report.md、report.json、module-matrix.json、截图、console 和 cleanup 结果。
只跑少量路由:
node .codex/skills/infoq-admin-e2e/scripts/run_admin_e2e.mjs --client vue --route-limit 1
默认写入:
doc/tmp/infoq-admin-e2e/<run-id>/
/auth/login。console error、pageerror、真实登录失败、状态文件缺失或 owned 端口未收口时,不能标记 E2E 通过。references/matrix/case-schema.mdreferences/matrix/route-source-rules.mdreferences/captcha/scenario-matrix.mdreferences/crud/crud-patterns.mdreferences/crud/test-data-policy.mdreferences/crud/cleanup-policy.mdreferences/crud/selector-policy.md