Selenium会在没有GUI的Ubuntu上工作吗
我在各种云平台上使用Codeception,比如AmazonAWS和Cloud9。默认情况下,两者都没有GUI。我的问题是,您能在这种类型的系统上运行Selenium吗?或者我需要某种方式获得GUI吗?Selenium只是一个库,因此它并不特别关心您是否在配备GUI的系统上运行它。您可能会问:如果我使用Selenium打开浏览器,那么该浏览器是否可以在没有GUI的系统上工作。答案是:视情况而定 有无头浏览器:也没有GUI组件的浏览器。是用硒包装的。另一种流行的浏览器是,它有第三方Selenium绑定库,名为。就我个人而言,我会避免这两种情况!HtmlUnit使用的JavaScript引擎当前的桌面浏览器都不支持,因此测试不是很可靠。GhostDriver有,因此也会导致不可靠的结果。PahntomJS绝对是一个选择,因为它使用WebKit——Safari和Chrome浏览器中的引擎,但你必须自己编写 大多数系统都允许您使用虚拟GUI。你提到了Ubuntu,它是Debian的衍生物。网上有几个教程告诉您如何安装Xvfb,其中大多数都不完整或错误。在Debian上安装无头浏览器,如下所示:Selenium会在没有GUI的Ubuntu上工作吗,ubuntu,selenium,codeception,Ubuntu,Selenium,Codeception,我在各种云平台上使用Codeception,比如AmazonAWS和Cloud9。默认情况下,两者都没有GUI。我的问题是,您能在这种类型的系统上运行Selenium吗?或者我需要某种方式获得GUI吗?Selenium只是一个库,因此它并不特别关心您是否在配备GUI的系统上运行它。您可能会问:如果我使用Selenium打开浏览器,那么该浏览器是否可以在没有GUI的系统上工作。答案是:视情况而定 有无头浏览器:也没有GUI组件的浏览器。是用硒包装的。另一种流行的浏览器是,它有第三方Selenium
apt获取安装Xvfb
wget
来获取软件包/usr/local/lib
,然后创建从/usr/local/bin
到启动浏览器的二进制文件的软链接xvfb运行Firefox
。这可能会产生一些错误,您必须修复这些错误。在我的例子中,我丢失了库libdbus-glib-1-2
,我可以使用apt-get安装它Xvfb:99&
。有关更多信息,请参阅您可以使用phantomjs之类的工具进行无头测试。一篇示例文章:这个答案正在升级,所以我想我应该添加:Chrome和Firefox现在支持开箱即用的无头模式,而不需要Xvfb。从Selenium 3.6.0开始,Selenium就支持这一点,没有任何特别之处。有一个问题:如果我们使用的是PhantomJS、GhostDriver、HTMLUnit等无头浏览器。我们还需要Xvfb吗?@Darshan当然不需要。