1
resposta

Como conseguir criar cenários de teste onde o usuário já esteja logado?

No caso o teste seria, por exemplo, ao invés do usuário logar e clicar para subir uma foto no alura pic ele já iniciaria o caso de teste logado e a ação seria somente de inserir a foto ou curtir.

1 resposta

Oi Lucas, tudo bem?

Desculpa a demora em retornar.

Para criar cenários de teste onde o usuário já esteja logado, você pode utilizar o conceito de massa de dados. No Cypress, você pode utilizar um arquivo externo, como um arquivo JSON, para definir os dados dos usuários que serão utilizados nos testes.

No exemplo que você mencionou, em vez de fazer o usuário logar e clicar para subir uma foto no Alura Pic, você já iniciaria o caso de teste logado e a ação seria somente inserir a foto ou curtir.

No arquivo JSON, você pode definir os dados dos usuários que serão utilizados nos testes, como nome, email, senha, etc. Por exemplo:

[
  {
    "nome": "Lucas",
    "email": "lucas@example.com",
    "senha": "123456"
  },
  {
    "nome": "Maria",
    "email": "maria@example.com",
    "senha": "abcdef"
  }
]

No seu caso de teste, você pode utilizar a função forEach para iterar sobre os usuários do arquivo JSON e executar as ações desejadas. Por exemplo:

const usuarios = require('../../fixtures/usuarios.json');

usuarios.forEach(usuario => {
  it(`Inserir foto como usuário logado - ${usuario.nome}`, () => {
    // Ações para fazer o login com o usuário
    // Ações para inserir a foto ou curtir
    // Asserts para verificar se a foto foi inserida ou curtida corretamente
  });
});

Dessa forma, o Cypress irá executar o caso de teste para cada usuário definido no arquivo JSON, permitindo que você teste diferentes cenários com usuários logados.

Ah esse curso recebeu uma atualização, você pode verificar aqui:

Um abraço e bons estudos.