es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo empaquetar los pasos e2e en una función y ejecutarla desde un solo test?

Tengo más de 1000 líneas de pasos de prueba en la prueba de humo, como esta:

test("Prueba de humo", async (t) => {
  console.log("Iniciando prueba");
  //Quiero sacar esto en otra clase AuthStep.
  await AuthPage.setUserName("testtest@hotmail.com"); //AuthPage - modelo de página de objeto
  await AuthPage.setUserPassword("123456");
  //Fin de AuthClass
  await t.expect(getUrl()).eql(authUrl);
  await t.expect(getUrl()).eql(loginUrl + "auth", { timeout: 100000 });
  await MainPage.setUserType(userName);
  ....
}

Solo quiero optimizar esta prueba de humo y, por ejemplo, mover estos pasos a clases separadas que se ejecutarán en la prueba de humo. ¿Cómo puedo hacerlo en el marco de pruebas TestCafe?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Una forma de optimizar la Prueba de Humo en el marco de TestCafe es crear clases separadas para cada paso de la prueba y luego llamar estas clases dentro de la Prueba de Humo principal.

    Por ejemplo, digamos que queremos mover los pasos de autenticación en una clase separada llamada AuthStep. Podemos definir la clase AuthStep de la siguiente manera:

    class AuthStep {
       static async login(username, password) {
          await AuthPage.setUserName(username);
          await AuthPage.setUserPassword(password);
       }
    }
    

    Para llamar esta clase dentro de la Prueba de Humo, podemos hacer lo siguiente:

    test("Prueba de Humo", async (t) => {
       console.log("Iniciando la prueba");
    
       await AuthStep.login("testtest@hotmail.com", "123456");
    
       await t.expect(getUrl()).eql(authUrl);
       await t.expect(getUrl()).eql(loginUrl + "auth", { timeout: 100000 });
       await MainPage.setUserType(userName);
       ....
    }
    

    De esta manera, hemos movido los pasos de autenticación en una clase separada, y podemos llamar esta clase dentro de la Prueba de Humo principal para hacer la prueba más organizada y más fácil de mantener.

    Podemos crear clases separadas para otros pasos de prueba, y llamarlos dentro de la Prueba de Humo de una manera similar. Este enfoque no solo hace que la Prueba de Humo sea más organizada, sino que también la hace más fácil de reutilizar en otras pruebas.

Comments are closed.