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

Invoke para abrir uma nova página sem ser em outra GUIA

Olá,

minha dúvida gira em torno do seguinte erro: erro no .click

//Adiciona cliente
       
        cy.get('#ctl00_cph_btnNovo').invoke('removeAttr', 'target').click();

O elemento que estou copiando, é acionado no onclick, quando clica nesse elemento, sou redirecionado para uma página em outra guia, eu gostaria de saber se existe uma forma de fazer esse processo. Tentei com o invoke() mas fiquei confuso com a documentação do cypress, no quesito de quando utilizar e essa minha tentativa deu erro. :(

2 respostas
solução!

Olá Ian! Tudo bem com você?

Peço desculpa pela demora em responder o seu tópico.

O método invoke é usado para invocar uma função em um elemento selecionado. No seu caso, você está tentando remover o atributo target do elemento e, em seguida, clicar nele. No entanto, o erro que você está recebendo indica que o elemento não possui o método click.

Uma possível solução para o seu problema é usar o método trigger em vez do invoke. O método trigger permite simular eventos em elementos selecionados. Você pode usar o evento click para simular o clique no elemento e, assim, abrir a nova página.

Aqui está um exemplo de como você pode fazer isso:

cy.get('#ctl00_cph_btnNovo').trigger('click');

Dessa forma, o Cypress irá simular um clique no elemento selecionado, abrindo a nova página sem que ela seja aberta em outra guia.

Espero que essa solução seja útil para você! Se tiver mais alguma dúvida, estarei à disposição.

Grande abraço e bons estudos!

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

Legal, irei testar! Obrigado.