运行测试时,每次Behat推出需要Chrome的方案时,我都不会被Chrome弹出打扰。
我知道maximizeWindow()
对象有一个session
方法,但没有像"最小化"。
答案 0 :(得分:1)
您可以使用虚拟帧缓冲区运行Chrome,以便窗口显示在虚拟屏幕上而不是真实屏幕上。
这也允许在无头机器上轻松运行测试,例如构建服务器。
在Linux上,我们为此特定目的使用xvfb
。更多信息:How To Run Your Tests Headlessly with Xvfb
对于Windows,请参阅Is there anything like xvfb or xnest for Windows?
答案 1 :(得分:1)
如今,您可以将Chrome设置为无头模式(behat.yml
):
default:
extensions:
Behat\MinkExtension:
javascript_session: browser
sessions:
browser:
selenium2:
browser: chrome
capabilities:
chrome:
switches:
- "--headless"
答案 2 :(得分:0)
似乎没有在后台启动的方法。 maximizeWindow
用于设置分辨率。
您应该尝试在虚拟机或其他PC上运行,以避免此类问题,弹出窗口以及错误地与运行自动化的窗口进行交互。
在编写新测试和调试时,应该在同一台机器上运行。
答案 3 :(得分:0)
我找到了一个可接受的解决方案,不需要我运行Chrome无头或虚拟机。
只需使用本地计算机上的辅助用户帐户登录,然后在该帐户上运行selenium。然后,切换回主用户帐户并运行测试。 Chrome浏览器将在运行selenium的用户下创建,您将永远不会看到弹出的Chrome窗口。