我创建了一个带有相对路径的jar(意味着我已经在资源内部给了geckodriver并映射了它)但问题是firefox启动但是url没有被加载。我需要它在运行多个操作系统的多个系统上运行。有人可以帮忙吗?
import com.relevantcodes.extentreports.ExtentReports;
import com.relevantcodes.extentreports.ExtentTest;
import com.relevantcodes.extentreports.LogStatus;
import org.junit.Test;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxProfile;
import org.testng.annotations.BeforeTest;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
public class Maintest {
public static FirefoxDriver driver;
//public static ChromeDriver driver;
public static String downloadPath = "/home/user/Desktop/Downloads";
private static ExtentReports reports;
@BeforeTest
public static void createDriver() {
System.setProperty("webdriver.firefox.marionette", "/home/user/Desktop/geckodriver");
driver = new FirefoxDriver(FirefoxDriverProfile());
driver.manage().window().maximize();
}
public static FirefoxProfile FirefoxDriverProfile() {
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("browser.download.folderList", 2);
profile.setPreference("browser.download.manager.showWhenStarting", false);
profile.setPreference("browser.download.dir", downloadPath);
profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/octet-stream");
profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "text/csv, application/pdf,application/octet-stream");
profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/pdf,application/x-pdf, application/pdf,application/vnd.fdf,application/vnd.ppdf, application/acrobat, applications/vnd.pdf, text/pdf, text/x-pdf, application/vnd.cups-pdf, application/foxit");
profile.setPreference("browser.helperApps.neverAsk.openFile",
"text/csv,application/x-msexcel,application/excel,application/x-excel,application/vnd.ms-excel,image/png,image/jpeg,text/html,text/plain,application/msword,application/xml/application/pdf");
profile.setPreference("browser.helperApps.neverAsk.saveToDisk",
"text/csv,application/x-msexcel,application/excel,application/x-excel,application/vnd.ms-excel,image/png,image/jpeg,text/html,text/plain,application/msword,application/xml/application/pdf");
profile.setPreference("browser.helperApps.alwaysAsk.force", false);
profile.setPreference("pdfjs.disabled", true);
profile.setPreference("plugin.scan.Acrobat", "99.0");
profile.setPreference("plugin.scan.plid.all", false);
profile.setPreference("plugin.disable_full_page_plugin_for_types", "application/pdf");
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);
return profile;
}
@Test
public static void bridge(List<String> selectedList) throws Exception {
createDriver();
System.out.println("###############"+new Date()+"###############\n\n");
DateFormat format = new SimpleDateFormat("dd-MM-yyyy");
Date date = new Date();
String dateTime = format.format(date);
reports = new ExtentReports("/home/user/Desktop/Regression Results-"+dateTime+".html", true);
driver.get("http://sitename");
答案 0 :(得分:0)
当您使用geckodriver低版本时会发生已知问题,还有一个要添加检查gecko驱动程序版本是否与您的给定环境兼容。 您可以从https://github.com/mozilla/geckodriver/releases
下载最新版本