2009-12-27 80 views
8

我想運行Selenium無頭(沒有瀏覽器出現)。其他問題指出xvfb是做這件事的工具。然而,它看起來非常不穩定,一直在崩潰,所以我正在尋找另一種選擇。不使用xvfb運行硒無頭髮

是否有非xvfb方式運行Selenium無頭?

回答

13

我不認爲如果不運行X服務器就可以運行瀏覽器。

如果你不喜歡Xvfb,那麼就像Pascal說的那樣,你最好的選擇可能是運行VNC服務器 - 我個人喜歡Xtightvnc。這意味着您正在運行一個可以隨時VNC插入的(無頭)X服務器,以防出現問題並想要查看它。我總是有一個VNC服務器在運行,並且我正在運行我的測試,並且指向該服務器的$ DISPLAY環境變量。 (有人低估了我,也許我應該澄清一下:像Xtightvnc這樣的X11 VNC服務器與Windows或OS X上常見的VNC服務器不一樣,它們只會在網絡上共享您現有的屏幕,請不要混淆。 ;-))

+0

優秀的答案 - 特別是因爲RHEL在yum版本庫中似乎沒有Xvfb。然而,tigervnc _is_在那裏。所以我會說這是一個更正式的支持解決方案,但谷歌搜索似乎首先導致你xvfb ... – jm0 2014-04-24 21:25:57

+0

很酷,但一些用戶可能會在如何使用它的損失。你可以添加一些例子嗎?例如:運行'$ vncserver',檢查輸出索引'New'X'desktop is host:1',然後用它來運行你的命令,例如xcalc'$ DISPLAY =:1 xcalc'。你也可以看到這個顯示:'$ vncviewer localhost:59XX' – tokland 2017-11-08 22:24:38

6

我很驚訝。我已經多次使用Selenium和Xvfb,沒有任何問題,許多其他用戶也這樣做。你能更具體地瞭解你的設置和你面臨的問題嗎?你如何啓動Xvfb?你能提供xvfb.log嗎?

但是,要回答您的問題,可以使用X VNC服務器。有關說明,請參閱例如this page。沒有關於你的配置的任何細節,實際上很難更精確。

+0

我想xvfb的問題是這樣的:http://wiki.maemo.org/Developer_frequently_asked_questions#.22xephyr.22_fails_to_start_in_the_host_with_a_dbus_security_error。 xvfb總是感覺像一個奇怪的解決方案,所以我一直在尋找另一種方法(儘管VNC感覺相同: - /)。謝謝。 – 2009-12-27 22:54:07

+2

如果你發現問題,那麼我猜你找到了解決辦法,不是嗎? – 2009-12-27 23:43:41

+0

我是這麼想的。我申請修復,看起來很好,但它仍然破損。 https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/330052看起來像這個問題。 – 2009-12-28 16:12:05