Eu tenho um teste Cypress que escrevi e, para evitar escrever um segundo teste, gostaria de poder pegar o URL resultante e fazer duas coisas com ele:
1) Gostaria de modificá-lo para forçá-lo a ir para outra página
2) Ao fazer o nº 1, também precisarei extrair um valor dinâmico do URL para ser usado no URL modificado.
Eu tenho cy.url() mas não sei como capturar o valor que preciso e defini-lo como uma variável. Alguém sabe uma maneira de fazer isso? Sou um novo programador e ainda estou aprendendo javascript, então isso pode ser fácil e simplesmente não sei como fazer isso. Qualquer conselho é muito apreciado!
Responder1
Para extrair valores dos elementos cy, você deve usar promessas(então sintaxe). Trabalhar com assincronicidade JS é um pouco assustador no início, mas não entre em pânico! Estude este conceito central e você aprenderá rapidamente como funciona o Cypress!
Para responder à pergunta nº 1, você poderia fazer:
cy.url().then(urlValue => cy.visit(urlValue + '/about');
O exemplo acima irá extrair a URL atual e você poderá usá-la na próxima ação. (url é exposto como um argumento de função de seta, aqui chamado urlValue).