Cypress 自定义命令
自定义命令 提供了一种在整个 Cypress 测试套件中复用某些方法或函数的方式。 例如,您可以编写一个用于让用户登录的命令,并在项目中需要时复用它。
PyCharm 支持自定义命令,这意味着重命名、导航、代码补全和检查等所有编码辅助功能可立即使用。
自定义命令的编码辅助
特定于 Cypress 的检查
Cypress 使用一种 链式机制 ,使您能够编写一系列命令,其中信息从一个命令传递到下一个命令,直到链结束或发生错误。
但是,该机制有一些特殊性。 例如,任何 操作命令必须始终放在链的末端且只能使用一次。
在此示例中,该链包含两个依次放置的操作命令,这是不允许的。 执行此测试将导致错误。
在此示例中,该链被分成两段,因此每段链仅包含一个操作命令。 该测试将顺利执行。
在 JavaScript/TypeScript 中不会对命令链进行验证,而在 Cypress 中仅会在运行时进行,这可能在测试执行期间导致问题。 相应地,PyCharm 提供针对链式命令的检查,高亮显示不正确的用法。

针对函数的检查
PyCharm 会执行针对函数的代码检查,用于检测并纠正项目中的异常代码。
例如,如果为该命令提供的参数数量或类型不正确,错误的代码会被高亮显示。 您可以将鼠标悬停在高亮显示的代码上以查看错误说明。

有关详细信息,请参阅 代码检查。
重命名
如果需要重命名该命令,您可以使用 重命名重构。 操作步骤:
高亮显示您要重命名的命令。

按 Shift+F6 ,并为该命令提供新名称。

(可选)配置其他搜索选项并定义范围。
点击 重构。
有关详细信息,请参阅 重命名重构。
创建自定义命令
要创建自定义命令,您需要先编写命令,然后为其创建 TypeScript 声明。 操作步骤:
在代码编辑器中编写您的命令。


将鼠标悬停在高亮显示的代码上并点击 创建缺失的 TypeScript 声明。
或者,将插入符号置于高亮显示的代码处,按 Alt+Enter ,然后选择 创建缺失的 TypeScript 声明。


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

导航到 TypeScript 声明
您可能希望在命令实现与相应的 TypeScript 声明之间进行导航:
要导航到 TypeScript 声明,请在命令实现附近的装订区域中点击
。

要导航回命令实现,请在 TypeScript 声明附近的装订区域中点击
。

使用自定义命令
一旦 创建了自定义命令,您即可在代码中使用它。 操作步骤:
在测试中,键入
cy.,然后输入自定义命令名称。

更改命令文件的位置
默认情况下,包含生成的 TypeScript 声明的文件位于 cypress/support/commands.ts 。 如果您想更改位置:
按 Ctrl+Alt+S 打开设置,然后选择 。
在 用于存储自定义命令 TS 声明的 TypeScript 文件 字段中,指定新路径。

应用更改并关闭对话框。