以编程方式删除Firefox的许可协议对话框

时间:2009-04-28 08:22:43

标签: firefox unix selenium headless

我正在使用Selenium运行回归测试,并自动启动Firefox的实例。

问题是由于Firefox的许可协议对话框,我的测试卡住了:

Copyright notice http://img151.imageshack.us/img151/3467/31963141.png

我无法用鼠标点击,因为我处于一个虚拟图形环境的无头环境中。

我想知道Firefox的文件可以编辑(以及如何编辑)以诱骗Firefox认为有人接受了版权。

评论后的澄清

我只需要做一次。但我不能用鼠标做这个,因为这是一个虚拟图形环境,我没有鼠标或看到鼠标指针。不过我可以截取屏幕截图。

5 个答案:

答案 0 :(得分:4)

好的,我最终自己找到了它。

正确的答案是:

在Firefox安装中,查找firefox.js

找到这一行:

pref("browser.EULA.3.accepted", false);

并替换false whit true

感谢所有帮助。

答案 1 :(得分:1)

根据此link text已被删除 - 但它看起来比你的版本更晚。

答案 2 :(得分:0)

编写一个单击“我同意”的Selenium测试

添加“同意”设置,使Firefox将其跳至Firefox配置文件的prefs.js

只使用已经同意许可的Firefox配置文件。

答案 3 :(得分:0)

在Firefox 3.0.10中,它隐藏在about:config

browser.rights.3.shown

将其设置为true,您就完成了。

答案 4 :(得分:0)

有两个覆盖prefs(后者是“遗留EULA pref”),您可以在profile目录中的prefs.js中覆盖它们:

user_pref("browser.rights.override", true);
user_pref("browser.EULA.override", true);