如何使用带有Java的Selenium Webdriver在Firefox中禁用不安全密码警告

时间:2017-06-16 06:51:12

标签: java selenium firefox webdriver

我是Selenium Webdriver的新手。我正在尝试在Firefox中测试我的应用程序登录页面。每次这样做时我都会收到不安全的密码警告(此连接不安全。此处输入的登录信息可能会受到损害)。

输入密码时即将出现。如何在使用Java的selenium Webdriver中禁用它?

目前我正在使用此代码:

System.setProperty("webdriver.gecko.driver", driverPathFF); 
DesiredCapabilities capabilities = new DesiredCapabilities(); 
capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true); 
capabilities.setCapability(CapabilityType.ACCEPT_INSECURE_CERTS, true); 
driver = new FirefoxDriver(capabilities);

但它没有帮助。我尝试了在相关谷歌搜索中找到的其他方法,但没有运气。

请查看链接以供参考。    Sceenshot

5 个答案:

答案 0 :(得分:1)

您可以尝试使用Selenium为firefox设置首选项。 例如,

var firefoxOptions = new FirefoxOptions();
firefoxOptions.SetPreference("security.insecure_password.ui.enabled", false);
firefoxOptions.SetPreference("security.insecure_field_warning.contextual.enabled", false);

它表示可以通过打开Firefox手动更改的值,输入about:config并查找相同的选项。 它帮助我的测试避免了不安全的登录消息。

答案 1 :(得分:0)

尝试创建类似下面的firefox配置文件,

profile = new FirefoxProfile()
profile.accept_untrusted_certs = True
DesiredCapabilities dc = DesiredCapabilities.firefox();
dc.setCapability(FirefoxDriver.PROFILE, profile);
WebDriver driver = new FireFoxDriver(dc);

答案 2 :(得分:0)

这样做的一种javascript方式:

const {Builder} = require('selenium-webdriver');
const firefox = require('selenium-webdriver/firefox');

    var profile = new firefox.Profile();
    profile.setPreference("security.insecure_password.ui.enabled", false);
    profile.setPreference("security.insecure_field_warning.contextual.enabled", false);

    var options = new firefox.Options().setProfile(profile);
    var browserUnderTest = new webdriver.Builder()   
     .forBrowser('firefox')
     .setFirefoxOptions(options)
     .build();

答案 3 :(得分:0)

如果我是对的,我认为有一种方法可以使用硒来实现这一目标: 这种性质的东西;

var firefox = new FirefoxOptions();
firefox.SetPreference("security.insecure_password.ui.enabled", false);

虽然不太确定!但是试一试!

答案 4 :(得分:0)

在Java中,这对我有用

FirefoxProfile fp = new FirefoxProfile();
fp.setPreference("security.insecure_field_warning.contextual.enabled", false);