2016-01-19 50 views
0

所以我有一個要求,其中腳本自動安裝一個應用程序,它會觸發一個Gradle腳本,然後將構建和執行應用程序的Selenium測試。檢查Firefox的配置文件,並創建如果它不存在使用Java

問題是,不能保證運行該系統的系統將具有默認或任何其他Firefox配置文件可用。雖然我們可以創建一個使用配置文件:

FirefoxProfile ffprofile = new FirefoxProfile(new File("D:\\Selenium")); 

但我已經運行完全相互獨立的測試,所以他們創造一個新的webdriver對象每次。爲每個測試創建一個新的配置文件似乎不是非常有效。

無論如何,我想要做的是檢查是否存在一個Firefox(「默認」)(可以在Windows/Linux),如果不是一勞永逸的創建它。 請指教,如果這是可能的。

回答

1

如果任何特定的配置文件,不需要按規定,那麼我們就可以如果需要任何特定的配置文件,通過好名字這個目錄,而不是選擇啓動Firefox馬上..

WebDriver driver=new FirefoxDriver(); 

。根據文檔不建議從目錄收集配置文件。

ProfilesIni allProfiles = new ProfilesIni(); 
    FirefoxProfile profile = allProfiles.getProfile("selenium"); 
    WebDriver driver = new FirefoxDriver(profile); 

請轉到此link創建配置文件並將其用於所有測試。即使沒有指定名爲「selenium」的配置文件,仍然會通過webdriver自行創建新的配置文件開始執行。

自動創建配置文件,

//changing firefox default options 
    FirefoxProfile firefoxProfile = new FirefoxProfile(); 

    firefoxProfile.setPreference("browser.download.folderList",2); //dont take default download folder 
    firefoxProfile.setPreference("browser.download.manager.showWhenStarting",false);//dont show download box 
    firefoxProfile.setPreference("browser.download.dir","c:\\downloads");//provide download location 
    firefoxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk","text/csv"); //dont ask save as for provided types 

感謝

+0

謝謝,但我想自動執行配置文件創建的一部分。那可能嗎?我將需要一些配置文件。我必須爲自動文件下載和全部設置自定義配置文件選項。 – mbsingh

+0

是的可能..i將更新答案 –

+0

@manpreetbhamba更新了通過腳本創建配置文件的答案 –

相關問題