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 ✓.