Estoy escribiendo una prueba de Cypress para probar una función de eliminación de cuenta. Dado que la prueba eliminará una cuenta cada vez que se ejecute, primero quiero crear una cuenta. Ya tengo un archivo de prueba para crear una cuenta.
describe("Create Email User", () => { beforeEach(() => { cy.restoreLocalStorage(); }); afterEach(() => { cy.saveLocalStorage(); }); it("Clicks to Create New User", () => { cy.visit("/signin"); cy.get('[data-cy="login-main-sign-up-link"]').click(); cy.get('[data-cy="sign-in-content-top-header-text"]').should( "contain", "Create your account" ); }); it("Enters Form Data", () => { cy.get('[data-cy="sign-up-name-first-name-input"]').type("John"); cy.get('[data-cy="sign-up-name-last-name-input"]').type("Smith"); const newEmail = createEmail(); cy.get('[data-cy="sign-up-name-email-input"]').type(newEmail); cy.get('[data-cy="sign-up-name-password-input"]').type("test123!"); cy.get('[data-cy="sign-up-name-next-button"]').click(); cy.get('[data-cy="sign-up-phone-header-text"]').should( "contain", "What's your phone number?" ); }); it("Reloads the page and clicks next button", () => { cy.reload(); cy.get('[data-cy="sign-up-onboarding-intro-header-text"]').should( "contain", "Great! Let's set up your account" ); cy.get('[data-cy="sign-up-onboarding-next-button"]').click(); cy.get('[data-cy="sign-up-role-wizard-header-text"]').should( "contain", "What role best describes you?" ); }); it("Selects Family/Friend role and clicks next button", () => { cy.get('[data-cy="sign-up-role-wizard-Family/Friend"]').click(); cy.get('[data-cy="sign-up-role-wizard-next-buton"]').click(); cy.get('[data-cy="sign-up-base-header-text"]').should( "contain", "Do you know which base your trainee is going to?" ); }); it("Selects No button and clicks next button", () => { cy.get('[data-cy="sign-up-base-no-button"]').click(); cy.get('[data-cy="sign-up-base-next-button"]').click(); }); });Ahora estoy trabajando en las pruebas de eliminación de cuenta. Primero quiero llamar a las pruebas de creación de cuenta para estar seguro de que hay una cuenta para eliminar.
¿Cómo llamo a un archivo de prueba para que se ejecute desde otro archivo de prueba?
Intente usar comandos personalizados en cypress para que la funcionalidad de inicio de sesión también se pueda usar en otras pruebas
Consulte https://docs.cypress.io/api/cypress-api/custom-commands#Syntax
Parece un proceso para la configuración y limpieza de pruebas y depende en gran medida de lo que desee lograr.
Definitivamente quieres:
support/commands.jsbefore() o antes de beforeEach() y colóquelos donde mejor se adapte al proyecto