2017-06-01 65 views
1

我已經使用Robotframework創建了Web測試。 一旦我試圖與詹金斯運行測試,測試失敗,由於啓動chromedriver崩潰。這是我收到的消息:一旦運行Jenkins,Chromedriver崩潰

WebDriverException:消息:未知錯誤:Chrome瀏覽器無法啓動:墜毀 (駕駛員信息:chromedriver = 2.29.461585(0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b),平臺=的Mac OS X 10.12.4 x86_64的)

嘗試手動運行它,一切正常。

這是一個減少代碼我運行:

*** Test Cases *** 
Test Sanity Setup 
    [Tags] Sanity 
    ${chrome_options} =  Evaluate sys.modules['selenium.webdriver'].ChromeOptions() sys, selenium.webdriver 
    ${prefs} Create Dictionary credentials_enable_service=${false} 
    Call Method ${chrome_options} add_experimental_option prefs ${prefs} 
    Call Method ${chrome_options} add_argument --disable-infobars 
    Call Method ${chrome_options} add_argument --kiosk 
    Create WebDriver Chrome  chrome_options=${chrome_options} 
Go to URL 
    Go To ${URL} 


Finalize Tests 
    close all browsers 


*** Keywords *** 
Provided precondition 
Setup chromedriver 
    Set Environment Variable webdriver.chrome.driver ./driver/chromedriver.exe 
+0

也許問題是我必須使用無頭瀏覽器,因爲我在遠程機器上運行Jenkins 仍在研究這種方式... –

+0

爲了幫助我們,我們需要了解更多有關您的設置。 Jenkins是在您自己的桌面上作爲PoC環境運行,還是運行在具有不同操作系統(Linux,Windows等)的服務器上?在詹金斯,你是在運行一個從節點的測試,還是在服務器本身上?您還可以提供Jenkins用於啓動Robot Framework測試的確切命令,當然也可以提供您用於手動運行測試的命令嗎? –

+0

謝謝您的回覆,Jenkins正在Mac上運行,並且作業在從節點上執行。 在這兩種情況下,我都運行相同的命令: 'robot sanity.robot' –

回答

0

能否請您闡述一下您有詹金斯運行這個測試什麼操作系統?該代碼建議您的本地計算機是Windows,因爲您將webdriver.chrome.driver設置爲Windows .exe?這在Linux和Mac機器上不起作用。

在Linux和Windows上運行Headless Chrome的手冊可以在here找到。

PS:Headless Chrome即將在Chrome 59上推出Linux和Mac,但在Selenium和Selenium-chrome驅動程序也支持它之前需要一點時間。

+0

謝謝你的回覆,實際上這是錯誤的,因爲我使用Mac機作爲Jenkins奴隸(但它仍然運行着chromedriver) –