[英]getting error : Server terminated early with status 127 in selenium chrome driver
當我嘗試使用 chrome 驅動程序進行單元測試時,出現錯誤: Server terminated early with status 127
,我已安裝 chrome 驅動程序仍然出現錯誤。 誰能幫助我為什么會遇到這個問題。 這是我的代碼,
let webdriver = require("selenium-webdriver");
let chromeOptions = new chrome.Options();
chromeOptions.addArguments("test-type");
chromeOptions.addArguments("start-maximized");
chromeOptions.addArguments("--js-flags=--expose-gc");
chromeOptions.addArguments("--enable-precise-memory-info");
chromeOptions.addArguments("--disable-popup-blocking");
chromeOptions.addArguments("--disable-default-apps");
chromeOptions.addArguments("--disable-infobars");
driver = new webdriver.Builder()
.forBrowser("chrome")
.setChromeOptions(chromeOptions)
.build();
就我而言,我缺少 Java 運行時環境 (JRE)。 我正在基於 Debian 的 docker 映像中使用 Selenium 運行 e2e 測試,因此sudo apt-get install default-jre
對我有用。 遺憾的是 selenium 在這種情況下沒有給出更有用的錯誤信息。
按照步驟:-
apt-get install default-jre
apt-get -f install
進行修復安裝apt-get install chromium-browser
確保安裝與您的 chromedriver 相關的正確版本的 chrome,例如 chromedriver 2.33 的 chrome 60-62將 webdriver 配置為以“無頭”模式啟動 chrome,以避免其他不必要的依賴項。 在節點中它看起來像:
const options = new chromeDriver.Options();
options.addArguments( 'headless', 'disable-gpu', );
new webdriver.Builder().forBrowser('chrome').setChromeOptions(options).build();
如果這里有人試圖在 Azure vm 上運行無頭鉻實例,您將需要:
或者(對於虛擬環境),您可以按照此處所述設置 xvfb 。 但是,如果你只安裝 apt,你會為自己節省很多時間。
我在這里花了幾個小時來解決這個問題,直到它起作用,希望它對未來的人有所幫助。
我的具體用例是在 Azure 實例上運行的 Node.js 服務器(我認為是 b2ms?機器大小.. 它是 15 美元/月)運行 Z3D945423F8E9496C429A5D8C604FZ 每分鍾 18 分鍾查詢某個感興趣的網站。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.