[英]Unable to run Selenium tests on non-headless mode ChromeDriver and Chrome
我想使用硒和鉻瀏覽器運行測試,但出現此錯誤
Message: unknown error: Chrome failed to start: exited abnormally
(unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
(Driver info: chromedriver=2.41.578700 (2f1ed5f9343c13f73144538f15c00b370eda6706),platform=Linux 4.4.0-31-generic x86_64)
與許多關於堆棧溢出的答案一樣,建議使用無頭鍍鉻。 我使用了它,它在無頭模式下工作得很好,但是問題是我不想在無頭模式下運行測試嗎?
這是我的瀏覽器選項
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-dev-shm-usage")
chrome_options.add_argument("start-maximized")
chrome_options.add_argument("disable-infobars")
chrome_options.add_argument("--disable-extensions")
chrome_options.add_argument("--disable-gpu")
我希望在非無頭模式下運行測試。
此錯誤消息...
Message: unknown error: Chrome failed to start: exited abnormally
(unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
(Driver info: chromedriver=2.41.578700 (2f1ed5f9343c13f73144538f15c00b370eda6706),platform=Linux 4.4.0-31-generic x86_64)
...暗示ChromeDriver無法啟動/產生新的WebBrowser,即Chrome瀏覽器會話。
您的主要問題是,通過Options
類的實例(即chrome_options) , WebDriver的配置不兼容
從日志中可以清楚地看到您正在使用基於Linux的系統:
platform=Linux 4.4.0-31-generic x86_64
按照Headless:使--disable-gpu標志不必要 --Linux系統和MacOS上不需要 --disable-gpu
標志。 您可以在如何配置ChromeDriver通過Selenium以無頭模式啟動Chrome瀏覽器中找到詳細的討論。
最后,根據最佳實踐,您需要確保:
Test
。 tearDown(){}
方法內調用driver.quit()
,以優雅地關閉和破壞WebDriver和Web Client實例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.