Cypress自定义login命令报错:"login"参数类型不匹配keyof Chainable
解决Cypress自定义login命令的TypeScript类型错误
这个报错是因为TypeScript默认不识别你新增的login自定义命令,需要手动扩展Cypress的类型定义,操作步骤如下:
- 找到Cypress项目的
cypress/support目录,新建或修改commands.d.ts文件(如果已有index.ts,也可以直接在该文件中添加代码) - 在文件里添加类型扩展代码:
declare namespace Cypress { interface Chainable { login(email: string, password: string): Chainable<void>; } }
- 检查项目根目录的
tsconfig.json,确保include数组包含Cypress相关的类型文件路径,示例配置:
{ "include": [ "cypress/**/*.ts", "cypress/support/**/*.ts" ] }
- 重启Cypress测试运行器,或重新执行TypeScript编译,之后调用
cy.login()就不会再出现类型错误了
内容的提问来源于stack exchange,提问作者Matti
相关产品推荐
相关产品推荐

