SuperAPI AI 工具集

e2e

测试与质量

查看项目

更新于 10-16 05:50

技能介绍

用途:为用户流程编写基于 Cypress 的端到端(E2E)测试。触发场景包括用户要求“write e2e tests”、输入 /e2e、“add Cypress tests”,或希望测试某个用户流程。

检测步骤(并行执行):检查 package.json 中的 cypress 版本;读取 cypress.config.ts 获取 baseUrl 与测试文件匹配模式;读取 cypress/e2e/ 下 1-2 个已有测试文件以匹配项目约定。

工作流程:读取已有测试与配置以匹配项目风格;理解用户流程,不清楚则询问;确定选择器(参考 selectors.md);在 cypress/e2e/ 中编写测试,每个流程或功能一个文件。

选择器优先级:若已安装 @testing-library/cypress,优先使用其命令,如 cy.findByRole('button', { name: 'Submit' });仅作最后手段才使用 cy.get('[data-testid="submit"]')。

规则:可用时使用 @testing-library/cypress 选择器,否则用 cy.get;data-testid 仅作最后手段;每个 it 块只验证一个逻辑结果;测试行为而非实现细节;绝不使用 cy.wait(<number>),改用 cy.findBy* 自动重试。

错误处理:若 package.json 中没有 cypress,停止并请用户先安装 Cypress;若缺少 cypress.config.ts,请用户运行 npx cypress open 初始化配置;若 baseUrl 不可达,先确认开发服务器已运行。

示例格式:describe('login flow', ...),使用 cy.visit('/login')、cy.findByLabelText、cy.findByRole、cy.url().should() 等。

限制:需项目已安装 Cypress 并提供配置;baseUrl 需可达;资料未提供收费、平台支持版本等更多信息。