PyCharm 2025.2 Help

Cypress 自定义 Commands

自定义命令提供了一种在 Cypress 测试套件中重用某些方法或函数的方式。 例如,您可以编写一个命令来登录用户,并在项目中适用时重复使用它。

PyCharm 支持自定义命令,这意味着所有代码辅助功能,如重命名、导航、代码补全和检查等,都可以立即使用。

自定义命令编码辅助

Cypress 专用检查

Cypress 使用一种 链机制 ,使您能够编写一系列命令,以便信息从一个命令传递到下一个命令,直到链结束或发生错误。

但是,此机制具有一些特定性。 例如,任何 action command必须始终放在链的末尾并且只能使用一次。

在此示例中,这个链包含两个连在一起的 action 命令,这是不允许的。 执行此测试将导致错误。

it('Click the search button and type Cypress', () => { cy.get("button[data-test='search-button']") .click() .type('Cypress') })

在这个例子中,链被分成两部分,所以每个链只包含一个动作命令。 此测试将顺利执行。

it('Click the search button and type Cypress', () => { cy.get("button[data-test='search-button']").click() cy.get("input[data-test$='inner']").type('Cypress') })

在 JavaScript/TypeScript 中不执行命令链的验证,而在 Cypress 中仅在运行时执行,这可能会导致测试执行过程中的问题。 PyCharm 会对链式命令进行检查,突出显示不正确的使用。

检查不正确的链接命令

函数特定检查

PyCharm 执行特定功能的代码检查,以检测和更正项目中的异常代码。

例如,如果您为该命令提供了不正确的参数数量或类型,错误代码会被高亮显示。 您可以将鼠标悬停在高亮的代码上查看错误描述。

Aqua ts function specific inspections

有关更多信息,请参见 代码检查

重命名

如果您需要重命名命令,可以使用 Rename 重构。 为此:

  1. 突出显示您想要重命名的命令。

    高亮命令
  2. 请按 Shift+F6 并提供一个新名称用于该命令。

    重命名命令
  3. (可选)配置其他搜索选项并定义范围。

  4. 点击 重构

欲了解更多信息,请参阅 重命名重构

创建自定义命令

要创建自定义命令,您必须先编写命令,然后为其创建一个 TypeScript 声明。 为此:

  1. 在代码编辑器中编写您的命令。

    TypeScript 编写的自定义命令
    TypeScript 编写的自定义命令
  2. 将鼠标悬停在高亮代码上,然后点击 创建缺失的 TypeScript 声明

    或者,将文本光标放在高亮显示的代码上,按下 Alt+Enter ,然后选择 创建缺失的 TypeScript 声明

    创建 TypeScript 声明
    创建 JavaScript 声明

因此,TypeScript 声明已生成并添加到 cypress/support/index.d.ts 文件中。

生成的 TypeScript 声明

您可能希望在命令实现与相应的 TypeScript 声明之间进行导航:

  • 要导航到 TypeScript 声明,请点击命令实现附近边栏中的

    导航到 TypeScript 声明
  • 要导航回命令实现,请点击 TypeScript 声明附近装订线中的

    导航到命令实现

使用自定义命令

一旦您 创建了自定义命令,就可以在代码中使用它。 为此:

  • 在您的测试中,键入 cy. 后跟自定义命令的名称。

    自定义登录命令
    自定义登录命令用法

更改命令文件的位置

默认情况下,包含生成的 TypeScript 声明的文件位于 cypress/support/commands.ts 。 如果您想更改位置:

  1. 按下 Ctrl+Alt+S 打开设置,然后选择 语言与框架 | Cypress

  2. 用于存储自定义命令的 TS 声明的 TypeScript 文件 字段中,指定一个新路径。

    指定新路径
  3. 应用更改并关闭对话框。

最后修改日期: 2025年 9月 26日