0

セレンを使用してファイルをダウンロードしているときに、ファイルダイアログを開いたり保存したりしないように、すべての設定を試しました。Firefoxでダウンロードダイアログが表示されないように設定されています。

これは、テキストファイルのためではなく、

は、以下のプリファレンスが設定されているPDFファイルのために働いている:

String downloadPath = <some random path>; 
    String mimetypes = "application/vnd.pdf,application/vnd.adobe.xfdf,text/csv,application/x-msexcel,application/excel,application/pdf,application/x-excel,application/vnd.ms-excel,image/png,image/jpeg,text/html,text/plain,application/msword,application/xml"; 
    String url = "http://only-testing-blog.blogspot.in/2014/05/login.html"; 
    FirefoxProfile profile = new FirefoxProfile(); 
    profile.setPreference("browser.download.panel.shown", false); 
    profile.setPreference("browser.download.folderList", 2); 
    profile.setPreference("browser.download.manager.showWhenStarting", false); 
    profile.setPreference("browser.download.dir", downloadPath); 
    profile.setPreference("browser.helperApps.neverAsk.openFile", mimetypes); 
    profile.setPreference("browser.helperApps.neverAsk.saveToDisk", mimetypes); 
    profile.setPreference("browser.helperApps.alwaysAsk.force", false); 
    profile.setPreference("browser.download.manager.alertOnEXEOpen", false); 
    profile.setPreference("browser.download.manager.focusWhenStarting", false); 
    profile.setPreference("browser.download.manager.useWindow", false); 
    profile.setPreference("browser.download.manager.showAlertOnComplete", false); 
    profile.setPreference("browser.download.manager.closeWhenDone", false); 

    FirefoxDriver driver = new FirefoxDriver(profile); 
    driver.get(url); 
    driver.findElement(By.xpath("//a[contains(.,'Download PDF File')]")).click(); 

2.53.0セレンバージョン

Firefoxの46を使用しています

これをPDF、Excel、Wordファイルでも使用できるようにしてください。

ありがとうございます!

+0

何がPDFファイルのために起こっていますか? –

+0

pdf、excel、workファイルのファイルダイアログを開くか保存する –

+0

「PDF、Excel、Word」のいずれかのファイルタイプに質問を絞り込むことはできますか? – DebanjanB

答えて

0

私が見つけた1つの解決策は、ProfileIniクラスを使用することです。それはpremadeのFirefoxプロファイルを読み込むことができます。その後

private ProfilesIni init = new ProfilesIni(); 
private FirefoxProfile profile = init.getProfile("QA"); 
private WebDriver driver = new WebDriver(profile); 

以下のように使用するには、ダウンロードダイアログをスキップして、自動的にあなたがしたい先のフォルダに保存して、すべてのための設定を維持するためにまっすぐプロファイルにそれらの好みのすべてを設定し、その設定を設定することができますあなたが何かをダウンロードする必要があるテストケース

関連する問題