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