![](/img/trans.png)
[英]Running headless firefox Xvfb with Jenkins to run selenium tests
[英]Blank page on headless Selenium tests run with Jenkins
無頭 Selenium 測試可以在我的機器上很好地運行(是的,我絕對應該搬到這個不存在問題的理想地方)。
但是,當我通過 Jenkins 啟動這些測試時,找不到任何頁面元素。 我截取了一個截圖來找出原因,它顯示了一個空白頁面。
這就是我實例化無頭 Chrome 瀏覽器的方式。
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.setPageLoadStrategy(PageLoadStrategy.NONE);
chromeOptions.addArguments("--headless");
chromeOptions.addArguments("--window-size=1920x1080");
chromeOptions.addArguments("start-maximised");
chromeOptions.addArguments("enable-automation");
chromeOptions.addArguments("--no-sandbox");
chromeOptions.addArguments("--disable-infobars");
chromeOptions.addArguments("--disable-dev-shm-usage");
chromeOptions.addArguments("--disable-browser-side-navigation");
chromeOptions.addArguments("--disable-gpu");
driver = new ChromeDriver(chromeOptions);
driver.manage().timeouts().pageLoadTimeout(30L, TimeUnit.SECONDS);
driver.manage().timeouts().setScriptTimeout(3L, TimeUnit.SECONDS);
driver.manage().window().maximize();
我有一個猜測,但我的同事說不可能是這樣:我應該在 Jenkins 服務器上安裝 Xvfb 嗎? 我的意思是,這是強制性的嗎? (在嘗試這種方法之前,我必須至少有 51% 的把握 ^^)
提前致謝。
就像 Shashank Kadne 提到的那樣,您需要在 Chrome 中設置一個選項來忽略證書。
chromeOptions.addArguments("--ignore-certificate-errors");
我嘗試了很多解決方案,但結果是不允許 Jenkins 訪問我需要測試的資源。 所以......無論如何我自己都無法解決。 系統管理員做到了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.