Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Utilidade do arquivo elements.js

fiquei na duvida com relação a utilidade desse arquivo pq pensei que utilizariamos os elementos criados nele, nos metodos da class do arquivo pagina-cadastro, por exemplo:

class PaginaCadastro {
    acessaPagina() {
        cy.visit
        cy.get(**RegisterNow**).click();
    }

testei isso aqui mas deu erro de referência.

2 respostas
solução!

Olá, Gabriel! Tudo bem com você?

A utilização do arquivo elements.js é uma prática comum no padrão de projeto Page Object. Esse arquivo visa centralizar os elementos da página que serão utilizados nos testes automatizados.

No projeto em questão, o arquivo elements.js contém os seletores CSS dos elementos da página de cadastro, como o botão "Register Now". Esses seletores são armazenados em uma constante chamada ELEMENTS, exportada para ser utilizada em outros arquivos.

No arquivo pagina-cadastro, você deve importar os elementos do arquivo elements.js e utilizá-los nos métodos da classe PaginaCadastro. Por exemplo, para acessar a página de cadastro, você deve utilizar cy.get(el.registerNow).click(), onde el é a constante que importa os elementos do arquivo elements.js.

Segue um exemplo de como ficaria:

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

class Cadastro {
  acessarPaginaDeCadastro() {
    cy.visit('https://3076-cypress-alurapic-front.vercel.app/#/home');
    cy.get(el.registerNow).click();
  }

  preencherFormulario() {
    cy.get(el.email).type(list[1].email);
    cy.get(el.fullName).type(list[1].fullName);
    cy.get(el.registerUserName).type(list[1].userName);
    cy.get(el.registerPassword).type(list[1].password);
  }

  submeterCadastro() {
    cy.get(el.btnRegister).click();
  }
}

export default new Cadastro();

OBS: Nesse exemplo, fiz a importação tanto dos elementos quanto das informações do usuário, no arquivo usuarios.json, então se certifique que o caminho nas importações sejam os mesmos que o seu antes de rodar o teste.

Espero ter esclarecido sua dúvida e lhe ajudado! Se tiver mais alguma pergunta, é só me dizer.

Grande abraço e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

Legal! Obrigado por esclarecer!