1
resposta

[Bug] falha na requisição CORS curso React escreva testes end to end cypress

Estou enfrentando problena no cadastro e login do curso https://cursos.alura.com.br/course/react-escreva-testes-end-to-end-cypress/task/123052

Quando tento submeter o cadastro cadastro Requisição cross-origin bloqueada: A diretiva Same Origin (mesma origem) não permite a leitura do recurso remoto em http://localhost:8000/public/cadastrar (motivo: falha na requisição CORS). Código de status: (null).

Quando tento submeter o login login Requisição cross-origin bloqueada: A diretiva Same Origin (mesma origem) não permite a leitura do recurso remoto em http://localhost:8000/public/login (motivo: falha na requisição CORS). Código de status: (null).

Alguém pode ajudar pf ?

1 resposta

Olá, Maiko! Tudo bem?

A documentação do Cypress fornece algumas soluções para problemas de Origem Cruzada. Uma delas sugere usar o cy.origin() para especificar em qual origem o comando sequencial deve ser executado:

it('navigates', () => {
  cy.visit('https://example.cypress.io')
  cy.visit('https://www.cypress-dx.com')
  cy.origin('https://www.cypress-dx.com', () => {
    cy.get('selector') 
  })
})

Essa limitação existe porque o Cypress alterna para o domínio em cada teste específico quando é executado. Para obter mais informações sobre isso, consulte nossa página de Testes de Origem Cruzada.

Outra solução possível, mas eu recomendo apenas caso a anterior não resolva o problema é Desativar a segurança do navegador. Para isso você deve definir chromeWebSecurity como false em navegadores baseados no Chrome, isso permite que você faça o seguinte:

  • Exibir conteúdo inseguro
  • Navegue para qualquer superdomínio sem erros de origem cruzada com ou sem cy.origin
  • Acesse iframes de origem cruzada incorporados ao seu aplicativo

Exemplo:

const { defineConfig } = require('cypress')

module.exports = defineConfig({
  chromeWebSecurity: false,
})

Para mais informações sobre essa solução, consulte a documentação clicando neste link.

Espero que essa solução seja útil para você. Caso ainda tenha alguma dúvida, estou à disposição!

Espero ter ajudado e bons estudos!