2015-12-17 14 views
2

Chrome正在中斷流程並詢問我(用戶)是否希望允許當前網站發送桌面通知。我曾嘗試在Chrome的高級設置頁面中更改此設置,但每次Watir實例化新的瀏覽器實例時,所有設置都會恢復爲默認設置。如何在使用Watir時保存Chrome的設置?

而不是處理代碼來處理這種事情的,我更喜歡產卵與我指定設置的實例,但我無法找到如何做到這一點。

任何幫助或瞭解這一點非常感謝。

的Watir webdriver的0.9.1

回答

2

上述工作,但我發現有時配置文件設置不總是拿起。另一種方法是使用chrome的命令行開關。

您可以添加他們像這樣:

b = Watir::Browser.new :chrome, :switches => %w[--disable-notifications] 

所有命令行開關的完整列表可以在這裏找到。 http://peter.sh/experiments/chromium-command-line-switches/

要注意:並非所有這些交換機仍然與鍍鉻的當前版本。

+0

非常感謝,這對於Chrome v46.0非常有效,將文件夾作爲文件夾複製不起作用。非常感激。 – iain

1
當您運行的Watir測試在臨時目錄中創建新的空白配置使用默認設置

/tmp/.com.google.Chrome.couple_random_characters/Default

網絡驅動器爲Firefox可以使用你的程序:

require 'watir-webdriver' 

default_profile = Selenium::WebDriver::Firefox::Profile.from_name "default" 
browser = Watir::Browser.new :firefox, :profile => default_profile 

Chrome網絡驅動器不具備此功能 您可以分析Chrome的偏好設置文件爲您config文件夾 (https://www.chromium.org/user-experience/user-data-directory

在Linux的路徑選項文件

/home/your_name/.config /谷歌鉻/默認/首

require 'watir-webdriver' 

prefs_hash = { 
#chrome preference what you need 
#for example: 
    'profile' => { 
     'default_content_setting_values' => {'automatic_downloads' => 1} 
    } 
} 
browser = Watir::Browser.new :chrome, :prefs => prefs_hash 

(...鉻偏好結構可以瓚ged而不是在文檔中描述)

相關問題