我是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
答案 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);