您必须在代码中考虑几个因素,如下所示:
- 您已通过创建的相同类的对象
PractiseSession1 ade= new PractiseSession1();
,并使用对象ade
来调用不同的方法OpenBrowser()
,GetPage()
和quitbrowser()
。这些方法执行的功能可以通过其中的一行代码来实现main()
,而无需创建任何对象。 - 在遵循 W3C Standards的情况 下使用Selenium 3.x时,要与 geckodriver.exe 一起使用
webdriver.gecko.driver
,我们需要使用而不是webdriver.firefox.marionette
在System.setProperty
一行中。 在提及时,
System.setProperty
您需要提供 geckodriver.exe 的绝对路径,如下所示:System.setProperty("webdriver.gecko.driver", "C:\your_directory\geckodriver.exe");
一旦提及
ImplicitlyWait
,它将在程序执行期间保留下来。您可以考虑删除多个提及。
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
- 您的整个代码可以仅用6行编写,如下所示:
package demo; import java.util.concurrent.TimeUnit; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.remote.DesiredCapabilities; public class Q44308973_remote_unreachablebrowserexception { public static void main(String[] args) { System.setProperty("webdriver.gecko.driver", "C:\your_directory\geckodriver.exe"); DesiredCapabilities dc = DesiredCapabilities.firefox(); dc.setCapability("marionette", true); WebDriver driver = new FirefoxDriver(dc); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); driver.get("https://google.com"); } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)