2017-08-22 77 views
0

我與Selenium WebDriver一起使用Java,我想知道是否可以卸載Selenium WebDriver可能在沒有System.setProperty(驅動程序路徑)的情況下工作?

System.setProperty("webdriver.gecko.driver", dirPath + "\\src\\test\\resources\\geckodriver.exe"); 

並交換到導入庫maven?我在mvnrepository上看到這個庫

<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-firefox-driver</artifactId> 
    <version>3.5.1</version> 
</dependency> 

是否有可能刪除System.setProperty並添加此依賴項?

+0

你可能想看看https://stackoverflow.com/questions/35285698/why-do-we-need-to-set-the-system-property-for-chrome-and-ie-browser - 不 - 爲 – Nerzid

回答

1

你可以檢查https://github.com/bonigarcia/webdrivermanager,這將爲你做這部分。例如:

WebDriverManager.getInstance(ChromeDriver.class).setup(); 

它會下載最新chromedriver.m2文件夾,並自動設置所需的系統屬性。

+0

只要我記得,這不再支持。 Selenium強迫你設置你的駕駛路徑。 – Nerzid

+0

@Nerzid「不支持」是什麼意思? 'WebDriverManager'隱式地做同樣的事情。 Chrome資源:https://github.com/bonigarcia/webdrivermanager/blob/master/src/main/resources/webdrivermanager.properties#L10值檢索:https://github.com/bonigarcia/webdrivermanager/blob/a697a9982c1157d76fe9c89db8e6912e4c3cbe9c/src /main/java/io/github/bonigarcia/wdm/ChromeDriverManager.java#L52屬性設置:https://github.com/bonigarcia/webdrivermanager/blob/a697a9982c1157d76fe9c89db8e6912e4c3cbe9c/src/main/java/io/github/bonigarcia/wdm /BrowserManager.java#L733 –

+0

感謝它的正常工作。我還有一個問題,你知道爲什麼我必須設置OperaOptions op = new OperaOptions(); (新文件(「C:\\ Program Files \\ Opera \\ 47.0.2631.55 \\ opera.exe」));沒有它歌劇不起作用? –

相關問題