SuperAPI AI 工具集

ns-e2e-tests

测试与质量

查看项目

更新于 10-16 01:36

技能介绍

用途:在仓库根目录的独立 tests-e2e/ 项目中实现 Cypress 端到端测试,适用于编写或重构 E2E 规格与命令。执行阶段使用;规划阶段参考 ns-spec-driven 的 e2e-test-task-generator.md。

主要能力:先定位或引导 Cypress 根目录。已有项目按 tests-e2e/cypress.config.ts、testes-cypress/cypress.config.ts、frontend/cypress.config.ts 顺序查找,记录含 cypress.config.ts 的目录为 {e2e_root}。若不存在则创建 tests-e2e/ 独立 Node 项目,package.json 只放此处,不加入 frontend;cypress.config.ts 的 baseUrl 取自 CYPRESS_BASE_URL,specPattern 为 cypress/e2e/**/*.cy.ts,并提供 cypress:open、cypress:run 脚本。命令架构按 shared/(全设备业务动作)、pages/(页面结构)、device/mobile|tablet|desktop 划分,新命令文件需在 support/e2e.ts 注册。规格放在 cypress/e2e/device/ 下,按 desktop、tablet、mobile 分目录,beforeEach 视口分别为 1280×720、768×1024、375×812。

使用方式:从 {e2e_root} 运行 npm run cypress:run 或产品文档中的 docker 等价命令。使用前端任务契约中的 data-testid,不自行发明;禁止固定 cy.wait(N),改用拦截或断言超时;RBAC 需验证菜单隐藏与直接 URL 拒绝;认证通过 UI 或支持会话,fixture 需租户感知。

限制:禁止在 frontend/cypress/ 下搭建、禁止把依赖复制进前端 lockfile、禁止假设应用包已装 Cypress;规格不得直接放在 cypress/e2e/ 而无 device/ 前缀。在 SDD 版本执行(execution-handoff.md / run-implementation)下只写或重构规格,不运行 E2E 套件,由人工在版本末运行。相关技能包括 ns-investigator 调试失败用例、ns-gitlab-ci-generator 配置 CI。