我在Firefox中工作,通过Behat Mink框架与Selenium 2驱动程序的桥梁。当我运行测试时,我得到一个HTTP代理身份验证弹出窗口。我的 behat.yaml 文件具有基本的身份验证用户名和密码,但它们不起作用。你能给我一个想法来处理这个弹出认证吗?
我也尝试过使用setBasicAuth()函数,但它对我不起作用:
$this->getSession()->getDriver()->setBasicAuth('dharmalingam' ,'Welcome123');
我的behat.yml包含:
extensions:
Behat\MinkExtension\Extension:
default_session: selenium2
javascript_session: selenium2
goutte: ~
selenium2:
browser: 'firefox'
wd_host: http://dharmainin:6eb372e8-708f-4e07-a33f-b712aab3cd77@ondemand.saucelabs.com:80/wd/hub
capabilities:
version: ~
platform: 'Windows 2008'
features/extensions/SauceIntegration.php:
param1: value1
context:
parameters:
base_url: "http://example.com/"
basic_auth:
username: 'dharmalingam'
password: 'Welcome123'
答案 0 :(得分:8)
是否提示您输入HTTP代理或网站本身的身份验证详细信息?如果网站本身,您应该能够使用username:password@domain
标准将用户名和密码嵌入到URL本身中。以下内容适用于您的behat.yml文件:
base_url: http://dharmalingam:Welcome123@xxxx.com/
(与上面代码段中的saucelabs网址中嵌入的身份验证详细信息类似。)
答案 1 :(得分:2)
您可以通过Sikuli,Selenium集成处理身份验证部分。这是documentation