Cypress setCookie 在 Docker 容器中无法与 Firefox 一起使用

我使用的是 Cypress 7.5.0,我在基于 cypress/browsers:node12.16.1-chrome80-ff73 的 Docker 容器中运行我的 E2E 测试。

测试已经在 Chrome 上运行了一段时间。 尝试在 Firefox 上执行它们时,出现以下错误:

CypressError: `cy.setCookie()` had an unexpected error setting the requested cookie in Firefox.

当我在本地(在 Docker 容器之外)运行测试并使用我的计算机上安装的 Firefox 版本(Ubuntu 18.04)时,相同的代码可以正常工作。

为了在我的应用程序中进行身份验证,我检索了以下 cookie:

[
  {
    name: 'XSRF-TOKEN',value: '7a8b8c79-796a-401a-a45e-1dec4b8bc3c3',domain: 'frontend',path: '/',expires: -1,size: 46,httpOnly: false,secure: false,session: true
  },{
    name: 'JSESSIONID',value: 'B99C6DD2D423680393046B5775A60B1C',expires: 1627566358.621716,size: 42,httpOnly: true,session: false
  }
]

然后我使用:

cy.setCookie(cookie.name);

我尝试使用不同的组合来覆盖 cookie 详细信息,例如:

cy.setCookie(cookie.name,cookie.value,{
  domain: cookie.domain,expiry: cookie.expires,httpOnly: cookie.httpOnly,path: cookie.path,secure: true,sameSite: 'Lax',});

但没有任何效果。

我不明白为什么它在本地运行时有效而在 Docker 容器中运行时失败。有什么想法吗?

谢谢。

ZYTLXJ 回答:Cypress setCookie 在 Docker 容器中无法与 Firefox 一起使用

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/16846.html

大家都在问