[英]Cypress: Typescript custom commands not working
更新: https://github.com/cypress-io/cypress/issues/1065#issuecomment-351769720從我的 commands.ts 中刪除導入修復了它。 謝謝
我正在嘗試將我的柏樹項目轉換為使用 TypeScript。 我正在關注https://docs.cypress.io/guides/tooling/typescript-support#Types-for-custom-commands上的信息
我已經修復了我遇到的所有其他編譯錯誤,但我仍然無法讓我的任何自定義命令正常工作,例如:
命令.ts:
declare namespace Cypress {
interface Chainable {
clickByLinkText(link: string): Chainable<Element>;
}
}
// Finds and clicks a given link by it's link text
Cypress.Commands.add("clickByLinkText", (link: string) => {
cy.get("a").contains(link).click();
});
當我嘗試在測試中調用 function 時,我得到:
TS2339:“cy & EventEmitter”類型上不存在屬性“clickByLinkText”。
我有導入“./commands”; 在我的支持/index.ts
您必須像這樣添加自定義命令。 您可以在此處查看討論 - https://github.com/cypress-io/cypress/issues/1065#issuecomment-351769720 -
function clickByLinkText(link: string) {
cy.get("a").contains(link).click();
}
Cypress.Commands.add("clickByLinkText", clickByLinkText)
同樣在您的 tsconfig.json 文件中添加"node_modules/cypress"
includes
考慮到 node_modules 和 tsconfig.json 文件處於 sam 級別。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.