2016-11-14 55 views
2

是否可以将密码添加到作为org.openqa.selenium.firefox.FirefoxProfile实例创建的配置文件?是否可以创建一个FirefoxProfile并传入保存的密码?

从Mozilla的文档(Profiles — Where Firefox stores your bookmarks, passwords and other user data),我可以看到,在两个文件的Firefox存储密码:

但看不到任何方式在FirefoxProfile类单独添加密码到配置文件,或者在文件传似logins.json/key3.db。 (我在链接的Mozilla页面上找不到任何东西,这似乎是以普通用户的身份存储密码,而不是编程)

在我的Selenium测试套件中,我创建了一个Firefox配置文件代码但我有编码的密码(例如对于HTTP基本验证在开发服务器)到这样的网址:

http://user:[email protected]/example.html 

(我知道我可以创建一个完整的个人资料,并添加到Git的,其传递的,但想避免,如果我可以)

+0

哪个版本的Firefox需要这个解决方案来支持? – MikeJRamsey56

+0

@ MikeJRamsey56,我的工作机器上安装了FF47,所以我会说或更好 - 如果您有解决方案可以工作,例如只是最新版本,我很乐意升级! – anotherdave

+1

47.0.1之后的Firefox版本对Selenium Java的支持取决于geckodriver。您需要Selenium V3.0.2(截至撰写本文时)。有geckodriver的问题。 “木偶和geckodriver功能尚未完成,这意味着它尚未完全符合WebDriver标准或与Selenium完全兼容。”所以FF47可能是可以完成的最新版本。让我玩弄它。 – MikeJRamsey56

回答

1

我通过selenium firefoxprofile code for v53.0读并没有看到任何明显的。但是,您可以将copy those two files from the existing profile放入由selenium创建的默认配置文件中。您只需执行时需要将新生成的默认firefoxprofile你可以得到(动态)的位置:

FirefoxProfile profile = new FirefoxProfile(); 
System.out.println(">> path to profile=" + profile.layoutOnDisk().getAbsolutePath()); 
// Copy the two files 
WebDriver driver = new FirefoxDriver(profile); 
+0

还没有机会尝试,但听起来应该让我得到我需要的东西。耻辱,你不能通过API做到这一点。 – anotherdave

0

是有可能在Firefox配置文件创建 点击菜单按钮,然后单击ExitQuit。注意:您可以使用-P,-p或-ProfileManager(它们中的任何一个都可以工作)。按回车键。 Firefox配置文件管理器(选择用户配置文件)窗口应该打开。

+0

嗨阿米特,我问的是创建添加密码到通过Selenium Java API编程创建的配置文件,而不是使用配置文件管理器手动创建配置文件 – anotherdave

+1

哦,我很抱歉@anotherdave –

相关问题