2017-09-06 69 views
0

詳情: 硒:3.5.3 鉻:版本60.0.3112.113(正式版本)(64位)無法運行在Firefox上的示例代碼和鉻在Mac

package website; 

import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.chrome.ChromeDriver; 

public class Neddoc_chrome { 

public static String driverPath = "/Users/snigdhanarain/Desktop"; 
public static WebDriver driver; 


public static void main(String []args) { 
    System.out.println("launching chrome browser"); 
    System.setProperty("webdriver.chrome.driver","/Users/snigdhanarain/Documents/chrome"); 
    //System.setProperty("webdriver.chrome.driver", driverPath+"chromedriver.exe"); 
    driver = new ChromeDriver(); 
    driver.navigate().to("http://google.com"); 
} 
} 

錯誤我在面臨如下: -

錯誤獲取:線程 「main」 java.lang.IllegalStateException:本 驅動程序可執行文件的目錄: /用戶/ snigdhanarain /文檔/鉻

+0

錯誤獲取:線程「main」 java.lang.IllegalStateException:驅動程序可執行文件的目錄:/用戶/ snigdhanarain /文件/鉻爲Firefox – snigdha

+0

相同的代碼... - – snigdha

回答

2

那是因爲你使用了錯誤的二進制。

.exe是二進制文件是專門爲windows設計的,.exe exention是爲windows保留的,它不能在mac中運行。

你需要從以下網址下載Mac OS特定的二進制: -

https://chromedriver.storage.googleapis.com/index.html?path=2.32/

同樣,從以下網址下載Mac OS二進制: -

https://github.com/mozilla/geckodriver/releases

代碼將如: -

{ 
public static void main(String[] args) { 
    System.setProperty("webdriver.gecko.driver", "/Users/sn‌​igdhanarain/Document‌​s/geck"); 
    WebDriver driver = new FirefoxDriver(); 
    driver.get("google.com"); 
} 
} 

希望它會幫助你:)

+0

shubham我嘗試通過從URL下載它,你已經給了 公共類Neddoc公共類static void main(String [] args){0} 「); WebDriver driver = new FirefoxDriver(); driver.get(「http://www.google.com」); }} 但 還是它不工作,並給予1504701197208 \t addons.manager \t DEBUG \t應用已經升級 – snigdha

+0

是的,它會因爲使用的是錯誤的參數,而不是使用webdriver.firefox.marionette被失敗..使用webdriver.gecko .driver –

+0

更新了代碼 –