同源策略 Cypress,两个不同的端口

时间:2021-06-17 16:57:38

标签: port cypress

该网站的网址如下:localhost:3000/..... 我想使用以下网址调用该网站: localhost:4000/.... 在单个测试中使用 cy.visit()。不幸的是,由于同源策略(我有两个不同的端口),这不起作用。请你帮助我好吗。我该怎么办?

我想这样做:

beforeach (=> {cy.visit('localhost:3000/.....')})
it(=> {cy.visit('localhost:4000')})

非常感谢

2 个答案:

答案 0 :(得分:3)

这在 Cypress 世界中是众所周知的,在文档中提到过。如果它不适用于您的上下文,您首先不应选择 Cypress。但是,我也质疑在一次测试中访问不同来源的必要性。

如果您真的需要这样做,请阅读 Cypress 文档的 this part。这是可能的:

  • 在不同的测试中访问不同的来源
  • 无论您使用 .request() 访问哪个页面,您都可以使用 .visit() 命令请求任何来源

答案 1 :(得分:0)

同源策略是有效的,因为您在 beforeEach 中访问它。如果您在每个 it 案例的开头进行访问,则可以轻松解决。在我的实践中,使用 beforeEach 已被证明难以构建和维护,因为它必须设置不同的案例,并且最好在其代码中设置每个案例。

如果这不起作用 - 只需将案例分成不同的文件并将它们分组到一个文件夹中。