8
我有一个使用硒RC的python脚本;特别是webdriver。是否可以运行Selenium脚本而不运行X服务器?
我很想将脚本作为post-commit挂钩运行,理想情况是通过IE,Safari(如果可能),Chrome & Firefox。
但我不确定我需要做什么,因为每次我在本地机器上运行它时,都会弹出一个浏览器。
我听说过“saucelabs”。这是最好的解决方案吗?
我有一个使用硒RC的python脚本;特别是webdriver。是否可以运行Selenium脚本而不运行X服务器?
我很想将脚本作为post-commit挂钩运行,理想情况是通过IE,Safari(如果可能),Chrome & Firefox。
但我不确定我需要做什么,因为每次我在本地机器上运行它时,都会弹出一个浏览器。
我听说过“saucelabs”。这是最好的解决方案吗?
是的,您需要运行X服务器,因为Selenium需要运行的浏览器,并且浏览器需要某种X服务器才能运行。
幸运的是,有许多类型的X服务器,其中一个是Xvfb又名X虚拟帧缓冲区,它执行内存中的所有操作,因此不需要任何屏幕。
维基百科也有一些nice examples。
对于关键字headless
,xvfb
和selenium
,此处还有很多关于SO的问题。明智地选择;)
[编辑]:Here's a nice example。
我前段时间很苦恼,所以我会分享我的解决方案 - 在Ubuntu服务器上安装Selenium和xvfb:https://www.namekdev.net/2016/08/selenium-server-withoutx -window-系统xvfb的/ – Namek 2016-08-05 11:09:56