2017-04-20 132 views

回答

1

如今,您可以設置Chrome瀏覽器在無頭的模式,像這樣運行(behat.yml):

default: 
    extensions: 
     Behat\MinkExtension: 
      javascript_session: browser 
      sessions: 
       browser: 
        selenium2: 
         browser: chrome 
         capabilities: 
          chrome: 
           switches: 
            - "--headless" 
+1

我試過你的解決方案,工作正常!但我不得不更新硒服務器和鉻驅動程序。 – Roubi

0

似乎沒有辦法在後臺啓動。 maximizeWindow用於設置分辨率。

您應該嘗試在虛擬機或另一臺PC上運行,以避免這類問題,彈出窗口和運行自動化的窗口進行錯誤交互。

在編寫新測試和調試時應該在同一臺機器上運行。

1

您可以使用虛擬幀緩衝區運行Chrome,以便窗口顯示在虛擬屏幕上而不是真實屏幕上。

這還允許在無頭機器(如構建服務器)上輕鬆運行測試。

在Linux上,我們使用xvfb來達到這個特定目的。更多信息:How To Run Your Tests Headlessly with Xvfb

對於Windows,請參閱Is there anything like xvfb or xnest for Windows?

+0

感謝您的回答,科斯和@勞達。我希望有一個簡單的解決方案,但我不想安裝一個新的軟件來實現這一點。我會在運行我的測試時喝一杯咖啡...... – Roubi

+0

@Roubi一個簡單的解決方案是正在進行的工作:https://twitter.com/samccone/status/739166801427210240 – Kos

0

我發現了這一點,沒一個可以接受的解決方案不需要我在無頭或在虛擬機中運行Chrome。

只需在本地計算機上使用輔助用戶帳戶登錄,然後在該帳戶上運行selenium。然後,切換回您的主用戶帳戶並運行測試。 chrome瀏覽器將在運行selenium的用戶下創建,您將永遠不會看到chrome窗口彈出。

相關問題