我知道在java中不可能使用条件块中的变量。但是我不知道该怎么办。当我这样做的时候,我在if语句后面的代码出现了一个错误:
public static void startDriver(String preferredBrowser) throws Exception{
Webdriver driver;
if(preferredBrowser.equals("Firefox")){
}
else if(preferredBrowser.equals("Edge")){
}
else{
System.setProperty("webdriver.chrome.driver", driverPath);
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("excludeSwitches", Collections.singletonList("enable-automation"));
options.setExperimentalOption("useAutomationExtension", false);
driver = new ChromeDriver(options);
}
driver.manage().window().maximize();
driver.get(website);
}
这就是我试图解决的问题,但现在它确实同时为我打开了两个驱动程序:
public static void startDriver(String preferredBrowser) throws Exception{
System.setProperty("webdriver.chrome.driver", driverPath);
WebDriver driver = new ChromeDriver();
if(preferredBrowser.equals("Firefox")){
}
else if(preferredBrowser.equals("Edge")){
}
else{
System.setProperty("webdriver.chrome.driver", driverPath);
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("excludeSwitches", Collections.singletonList("enable-automation"));
options.setExperimentalOption("useAutomationExtension", false);
driver = new ChromeDriver(options);
}
driver.manage().window().maximize();
driver.get(website);
}
我希望你能帮我。
致以最诚挚的问候
基督教
您可以初始化每个preferredBrowser
的驱动程序类型,如下所示:
public static void startDriver(String preferredBrowser) throws Exception{
Webdriver driver;
if(preferredBrowser.equals("Firefox")){
driver = new FirefoxDriver();
}
else if(preferredBrowser.equals("Edge")){
driver = new EdgeDriver();
}
else{
System.setProperty("webdriver.chrome.driver", driverPath);
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("excludeSwitches", Collections.singletonList("enable-automation"));
options.setExperimentalOption("useAutomationExtension", false);
driver = new ChromeDriver(options);
}
driver.manage().window().maximize();
driver.get(website);
}