Después de la actualización 9.0.0 en Cypress tengo el siguiente error
La cadena de tipo de argumento no se puede asignar al tipo de parámetro keyof Chainable... La cadena de tipo no se puede asignar al tipo "y" | "como" | "desenfoque" | "verificar" | "niños" | "claro" | "cookieclara" | "cookiesclaras" | "clearLocalStorage" | "hacer clic" | "reloj" | ... La cadena de tipo no se puede asignar para escribir "interceptar", lo que afecta a todos mis comandos personalizados
¿Alguien podría ayudarme? Mi comando personalizado
A partir de la versión 9.0.0, ahora está obligado a declarar sus comandos personalizados. Consulte el registro de cambios de 9.0.0 (sexto punto bajo los cambios importantes) y consulte la información específica sobre los comandos personalizados que ahora se escriben en función del encadenable personalizado declarado aquí .
Además, vea esta receta sobre cómo agregar comandos personalizados y declararlos correctamente.
Para su comando personalizado, agregue este archivo cypress/support/index.d.ts con el siguiente código:
/// <reference types="cypress" /> declare namespace Cypress { interface Chainable<Subject = any> { /** * Custom command to ... add your description here * @example cy.clickOnMyJourneyInCandidateCabinet() */ clickOnMyJourneyInCandidateCabinet(): Chainable<null>; } }en soporte/index.d.ts
declare namespace Cypress { interface Chainable<Subject = string> { preventSubmit(form: string): Chainable<Element>; } }en soporte/commnad.js
Cypress.Commands.add("preventSubmit", (form) => { cy.get(form).then((form$) => { form$.on("submit", (e) => { e.preventDefault(); }); }); cy.log(`prevent default submit to '${form}'`); });en especificaciones/prueba.js
describe("MyTest", () => { ... it("Test 1", () => { ... cy.preventSubmit("form"); cy.get("form").submit(); } }