我的selenium代码没有运行。不断向我抛出以下错误:
Exception in thread "main" org.openqa.selenium.remote.UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.
Build info: version: 'unknown', revision: 'unknown', time: 'unknown'
System info: host: 'SLAP129', ip: '192.168.4.218', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_74'
Driver info: driver.version: FirefoxDriver
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:658)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:250)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:236)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:137)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:191)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:108)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:104)
at PractiseSession1.OpenBrowser(PractiseSession1.java:35)
at PractiseSession1.main(PractiseSession1.java:16)
Caused by: java.lang.NullPointerException
at org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:192)
at org.openqa.selenium.firefox.XpiDriverService.start(XpiDriverService.java:94)
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:78)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:637)
... 8 more
FIREFOX版本:53.0.3(32位)SELENIUM版本:selenium-java-3.4.0我正在使用Eclipse Luna,我的机器是Windows 7(64位)。我已经阅读了所有的帮助查询,但找不到解决方案。这是我的Java代码:
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
public class PractiseSession1
{
public static void main(String[] args)
{
// TODO Auto-generated method stub
WebDriver driver = null;
String URL="http://www.google.com";
//System.out.println("Application title is =============");
PractiseSession1 ade= new PractiseSession1();
ade.OpenBrowser(driver);
ade.GetPage(URL, driver);
ade.quitbrowser(driver);
}
private void quitbrowser(WebDriver driver)
{
driver.quit();
}
private void GetPage(String URL, WebDriver driver)
{
driver.get(URL);
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
}
private void OpenBrowser(WebDriver driver)
{
System.setProperty("webdriver.firefox.marionette", "<Geckodriver
path>geckodriver.exe");
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette", true);
driver= new FirefoxDriver();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
}
}
您必须在代码中考虑以下几个因素:
>
实用Session1 ade=new实用Session1();
创建了一个相同类的对象,并使用对象ade
调用不同的方法OpenBrowser()
、GetPage()
和quiter()
。这些方法执行的功能可以通过main()
中的一行代码来实现,而无需创建任何对象。webdriver.gecko.driver
而不是System.setProperty
行中的webdriver.firefox.marionette
。当您提到System.setProperty
时,您需要提供geckodriver.exe的绝对路径,如下所示:
System.setProperty("webdriver.gecko.driver", "C:\\your_directory\\geckodriver.exe");
一旦您隐式地提到wait,它将在程序的整个执行过程中保留。您可以考虑删除多次提及。
driver.manage().timeouts()。隐式等待(10,时间单位秒)
整个代码只需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");
}
}
详细了解如何使用webdriver.firefox。木偶进化为webdriver.gecko。驾驶员
您可以观看此空间。
你应该更换
driver = new FirefoxDriver();
具有
driver = new FirefoxDriver(capabilities);
以便您使用所需的功能运行测试。
唯一的问题是,它可能不适用于3.4.0,因为默认超时值已减少,并且现在可能太短。
密码 错误: Chrome版本: chrome可执行模式为 chromedriver版本:(支持ChromeV70-72,模式为) 操作系统: 此外,我在本地Ubuntu16.04_x64和CentOS7_x6虚拟机上测试了它,没有例外。我被这个问题难住了,有什么建议吗? 更新 将java升级到后,错误消息如下:
打开新驱动程序窗口时出错: 服务器日志: 我在linux上运行以下代码: 我的集线器节点已经启动并运行。那为什么我得到这个错误。
在使用docker-compose在网格上动态执行我的套件时,我得到了以下异常stacktrac: 这是在执行以下操作时发生的: chrome也是如此。我最近将selenium升级到最新版本,即3.141.59。 是: 这在Jenkins和我从cmd在我的系统中执行时都发生了。我不确定这个问题是与selenium还是网络有关。如果有其他解决方案的链接,请在此分享。预先感谢任何帮助。 更新和编辑:
问题内容: 我的selenium代码未运行。不断向我抛出以下错误: FIREFOX版本:53.0.3(32位)SELENIUM版本:selenium-java-3.4.0我正在使用Eclipse Luna,并且我的机器是Windows 7(64位)。我已经阅读了所有帮助查询,但找不到解决方案。这是我的Java代码: 问题答案: 您必须在代码中考虑几个因素,如下所示: 您已通过创建的相同类的对象,并
我正在尝试使用Selenium Grid运行一个简单的程序(事先不了解Selenium Grid),出现如下错误: 线程“main”org.openqa.selenium.remote中出现异常。UnreachableBrowserException:无法启动新会话。可能的原因是远程服务器地址无效或浏览器启动失败。构建信息:版本:“未知”,版本:“未知”,时间:“未知”系统信息:主机:“DEL1-
我是硒的新手。能够在Ubuntu上配置selenium设置。配置详情如下: 谷歌浏览器68.0.3440.84 但每次跑步我都会发现詹金斯的错误: 请推荐我。