As per the Selenium JavaDoc of FirefoxDriver Class, FirefoxDriver(profile)
method is no more supported as a valid Constructor
.
Instead it is being encouraged to use the FirefoxOptions
Class which extends MutableCapabilities
i.e. org.openqa.selenium.MutableCapabilities
So as you are creating a new FirefoxProfile on each execution through driver = new FirefoxDriver(profile);
, you have to use the setProfile()
method from the FirefoxOptions Class which is defined as :
public FirefoxOptions setProfile(FirefoxProfile profile)
Your code block will be :
System.setProperty("webdriver.gecko.driver", "/home/ranjith/Downloads/geckodriver");
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("browser.download.dir", "/home/ranjith/Downloads");
profile.setPreference("browser.download.folderList", 2);
profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
profile.setPreference( "browser.download.manager.showWhenStarting", false );
profile.setPreference( "pdfjs.disabled", true );
FirefoxOptions opt = new FirefoxOptions();
opt.setProfile(profile);
driver = new FirefoxDriver(opt);
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…