2017-07-20 96 views
0

我目前正在爲Jenkins使用Jenkins + Selenium插件。我有一個集線器和一些節點。 集線器節點在我的本地主機Selenium Grid + Jenkins + Python - >無頭RemoteWebDriver?

我意識到,當我在本地運行我的測試時(也就是說,使用chrome,firefox,IE webdrivers),那麼瀏覽器將出現並且測試將被執行。

driver = webdriver.Chrome() # Open Chrome Browser 

另一方面,如果我通過遠程webdriver運行測試,那麼瀏覽器看起來是無頭的。

capabilities = {"platform" : "VISTA"} 
capabilities["browserName"] = "chrome" 
driver = webdriver.Remote(command_executor='http://localhost:4444/wd/hub', desired_capabilities=capabilities) 
# Hub and Node are running locally, windows chrome won't open (Headless?) 
  1. 這些是遠程瀏覽器(硒網格) 「無頭」 默認?
  2. 我如何驗證它們是否真正在無頭模式下運行?
  3. 如果他們不是無頭的,我怎麼能讓他們無頭呢? (jenkins + 硒格)

我一直在試圖做一些研究,但找不到任何指定此文件。我剛剛發現這個帖子: http://grokbase.com/t/gg/selenium-users/15b64b173p/selenium-grid-browser-appears-headless

謝謝!

回答

0

RemoteWebDriver在默認情況下不是無頭的,它運行在您希望它運行的位置,它可以作爲普通瀏覽器在用戶帳戶上運行,也可以在LocalSystem帳戶的後臺運行。 你正在使用哪個操作系統?如果您將jenkins作爲Windows服務運行,則您的測試將在後臺運行,這是由於Windows服務0策略的正常行爲。

+0

嗨!是的,我在Windows上運行它。是的,我已經閱讀過Windows Session 0,它看起來就是我的情況。現在我必須找到一種方法來執行它們無頭 – Fertaku

+0

爲什麼你需要執行它無頭?在後臺運行瀏覽器有什麼問題?這些瀏覽器不是無頭的,如果你想要無頭瀏覽器,你應該使用htmlunitdriver,phantomjs或其他無頭驅動程序實現。 – acikojevic

+0

@acikojevic:因爲它更快。因爲它可以避免安裝和配置xvfb等依賴項。因爲鉻在宣佈無頭模式的時刻暫停了。儘量不要告訴人們他們需要什麼。 –

相關問題