Home > Software engineering >  How to resolve - Cypress detected a cross origin error?
How to resolve - Cypress detected a cross origin error?

Time:01-16

So i am using cypress to log into google and create a google form. I have gotten through the login, but now that I want to select create new form, I am seeing cross origin errors which seem to be blocking such actions. Can anyone help me out here? Heres my code. Its the click on #1f that is not working see error

'''

 describe('Test', function () {
  it('logs into google', function () {
    Cypress.on('uncaught:exception', (err, runnable) => {
        return false
        })
    cy.visit('http://docs.google.com/forms/u/0')

    cy.xpath("//input[@type='email']").type("[email protected]");
    cy.xpath("//span[contains(text(),'Siguiente')]").click();
    cy.wait(5000);
    cy.xpath("//input[@type='password']").type("1Testagain");
    cy.xpath("//span[contains(text(),'Siguiente')]").click();
    cy.wait(5000);
    ///cy.xpath("//span[contains(text(),'Probar otra manera')]").click();
  ///  cy.wait(5000) 
  ///     cy.xpath("//span[contains(text(),'Confirmar')]").click();
   /// cy.wait(5000)

   //cy.xpath("//span[contains(text(),'Untitled form')]").click();
   //cy.wait(5000)

   cy.get('#:1f').click();
   cy.wait(5000);

'''

CodePudding user response:

This is a cypress tradeoff and you can read about it from the cypress docs. In a nutshell, if you want to access two different URLs in one test you cannot. For this scenario, you have to write two tests where each URL is accessed. For e.g.

NOT OK ❌

it('navigates', () => {
  cy.visit('https://apple.com')
  cy.visit('https://google.com') // this will error
})

OK ✅

it('navigates', () => {
  cy.visit('https://apple.com')
})

// split visiting different origin in another test
it('navigates to new origin', () => {
  cy.visit('https://google.com') // yup all good
})

CodePudding user response:

Maybe it would help it would help more if more clarity was provided on what the reason for creating a Google form.

Back to the question, the original domain your test is bounded is https://google.com. I imagine removing the describe() block and having two it() with no describe() could help you out.

  •  Tags:  
  • Related