Firefox 有没有可能';假装';如果第三方cookie被阻止,站点是测试功能的第三方吗?

Firefox 有没有可能';假装';如果第三方cookie被阻止,站点是测试功能的第三方吗?,firefox,cookies,selenium-webdriver,Firefox,Cookies,Selenium Webdriver,我为一家试图通过iFrame实现单点登录的公司进行自动化测试;第三方网站将在iFrame中包含我们的页面,我们将进行授权 由于Firefox默认关闭第三方cookie,我们不得不重新设计工作方式。对于手动测试,我们已经在不同的域上托管了页面,但是这个域需要某些用户名和密码,我们无法在代码中公开,因此这很难自动化 有没有办法让Firefox误以为mydomain.com实际上不是mydomain.com?这听起来是不可能的,因为如果我能欺骗Firefox,使其认为我实际上是在mydomain2.c

我为一家试图通过iFrame实现单点登录的公司进行自动化测试;第三方网站将在iFrame中包含我们的页面,我们将进行授权

由于Firefox默认关闭第三方cookie,我们不得不重新设计工作方式。对于手动测试,我们已经在不同的域上托管了页面,但是这个域需要某些用户名和密码,我们无法在代码中公开,因此这很难自动化


有没有办法让Firefox误以为mydomain.com实际上不是mydomain.com?这听起来是不可能的,因为如果我能欺骗Firefox,使其认为我实际上是在mydomain2.com上,那么我就可以有效地添加第三方cookie,但由于我是在我自己的Firefox实例上这样做的,我的个人资料中有什么设置可以更改以混淆它吗?

使用DNSMasq怎么样?大多数开源路由器(如DD-WRT)都支持此选项。如果您需要通过https进行测试,您还可以在测试期间临时存储安全证书异常。

是的,这非常简单,我们一直都在这样做

登录到测试机器(将运行浏览器的计算机)并编辑主机文件,该文件位于c:\windows\system\drivers\etc中

为您希望混淆的站点添加一个条目,使用不同的域名,但使用正确的IP地址。因为它是一个不同的域,看起来像是一个第三方站点,但是因为IP地址相同,所以请求实际上会发送到同一个web服务器

例如:

假设您的web服务器在本地主机(地址为127.0.0.1)上运行

为添加主机条目

127.0.0.1   FirstPartyDomain.com
127.0.0.1   ThirdPartyDomain.com
通过

站点包含一个iFrame

<iframe src="ThirdPartyDomain.com/SetNastyCookies">

iFrame中的请求将转到同一服务器(本地主机),但在第三方站点的上下文中