2012-07-16 155 views
6

我正在嘗試使用Chrome運行Selenium測試。我正在使用C#。Selenim WebDriver - 無法找到Chrome二進制

var options = new OpenQA.Selenium.Chrome.ChromeOptions(); 
options.BinaryLocation = @"C:\Users\Vilem\AppData\Local\Google\Chrome\Application\"; 

using (IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver(options)) 
{ 
... 

似乎找到了chromedriver.exe,但它可以找到Chrome二進制文件。在自動搜索失敗後,我明確設置了到chrome.exe的路徑。我甚至在最後使用「chrome.exe」來試用它。我總是得到相同的結果:

找不到Chrome的二進制的:

C:\用戶\ Vilem \應用程序數據\本地\谷歌\鍍鉻\應用


FYI :我有一個關於3硒驅動程序的問題。我試圖將問題分解爲多個,這樣討論更容易。原文如下:Selenium WebDriver - No driver is working for me

+0

看到這篇文章「我得到錯誤,當我嘗試在Chrome中運行我的測試」[鏈接](http://stackoverflow.com/questions/106540​​60/selenium-webdriver-i-get-error-when-i-嘗試運行我的測試在鉻) – 2012-07-16 16:01:36

+0

謝謝。驅動程序不是問題 - 它被發現正確。之後,驅動程序會查找Chrome二進制文件,但即使路徑設置正確,也會失敗。 – 2012-07-16 16:18:43

回答

0

我遇到了php web驅動程序的相同問題。

請安裝Chrome瀏覽器的默認目錄,鍍鉻裝置將應用程序自動安裝到默認文件夾:

%HOMEPATH%\本地設置\應用數據\谷歌\鍍鉻\應用\鉻。 exe

請查看Wiki頁面瞭解更多信息。 http://code.google.com/p/selenium/wiki/ChromeDriver

+3

歡迎來到Stack Overflow!請勿在您的帖子中使用簽名/標語。您的用戶箱計爲您的簽名,您可以使用您的個人資料發佈您喜歡的任何關於您自己的信息。 [關於簽名/標語的常見問題](http://stackoverflow.com/faq#signatures) – 2012-12-19 11:15:16

+0

問題在於,某些本地化的Windows XP發行版中不存在此默認目錄'... \ Application Data \ ...'因爲「應用程序數據」可以從英文翻譯成某種語言。在Windows Vista和7上,這很容易。 – hynekcer 2013-07-14 00:04:00

1

下載「chromedriver_win_22_0_1203_0b.zip」提取出來,並設置路徑如下:(我已經把我的路徑)

options.BinaryLocation = @"F:\\Software Download_Ripon\\WebDriver\\chromedriver_win_22_0_1203_0b\\chromedriver.exe"; 

上面應該工作以及

+0

你可以在http://code.google.com/p/chromedriver/downloads/list – 2013-01-15 10:45:51

2

這是一個典型的問題部分本地化的Windows XP分佈。

我描述了一個Python的解決方案,因爲它不同,沒有CamelCase屬性的BinaryLocation標識符,它的記錄較少。是的,一個通用的解決方案是創建ChromeOptions的新實例,但它有可能只是動態地直接由一些代碼ChromeOptions修復bug開始第一個地方:

from selenium import webdriver 
webdriver.ChromeOptions.binary_location = ur"c:\Documents and Settings\user name\Local Settings\Data aplikací\Google\Chrome\Application\chrome.exe" 

,並保留其他所有代碼不變:

from selenium import webdriver 
browser = webdriver.Chrome() 

它是使用ur"..."的Unicode原始字符串在Python文字(不是字節字符串,如果路徑中包含國際字符)重要,而不是正常的u"..."如果完整路徑是硬編碼和用戶名與一些字符\經過特殊開始像\n \r \t

0

是不是在路徑末尾缺少chrome.exe的問題?

換句話說,路徑應包含可執行文件,而不僅僅是可執行文件所在的文件夾。

+0

下載它可能並非如此。快速瀏覽一下這個網站:https://sites.google.com/a/chromium.org/chromedriver/capabilities它看起來像只在MacOS上,你必須提供地址到實際的二進制文件而不是位置。 – PiotrWolkowski 2015-02-06 00:41:28

0

在您爲Chrome二進制文件提供的路徑中,請指定chrome.exe。它會工作!

相關問題