有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法向chrome发送URL

我正在用Java编写一些Selenium脚本。这里我使用的是选项,但不幸的是,我无法使用options将URL发送到浏览器。当我正常运行它时,我就能发送它。下面是我的代码

System.setProperty("webdriver.chrome.driver", "D:\\chromedriver.exe");
        String user = System.getProperty("user.name");
        // System.out.println(user);
        ChromeOptions options = new ChromeOptions();
        options.addArguments("user-data-dir=C:\\Users\\" + user + "\\AppData\\Local\\Google\\Chrome\\User Data\\");
        options.addArguments("--start-maximized");
        WebDriver cd = new ChromeDriver(options);
        cd.get("http://google.com");

当我运行这个时,我得到了下面的异常

Starting ChromeDriver 2.19.346078 (6f1f0cde889532d48ce8242342d0b84f94b114a1) on port 39621
Only local connections are allowed.
log4j:WARN No appenders could be found for logger (org.apache.http.client.protocol.RequestAddCookies).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Exception in thread "main" org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start: crashed
  (Driver info: chromedriver=2.19.346078 (6f1f0cde889532d48ce8242342d0b84f94b114a1),platform=Windows NT 6.1 SP1 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 61.43 seconds
Build info: version: '2.48.1', revision: 'd80083d', time: '2015-10-08 21:07:25'
System info: host: 'U0138039-TPD-A', ip: '10.112.78.15', os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.7.0_67'
Driver info: org.openqa.selenium.chrome.ChromeDriver
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
    at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:647)
    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:247)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:129)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:142)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:170)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:159)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:148)
    at EaselTest.main(FirstTest.java:20)

但是当我运行下面的

System.setProperty("webdriver.chrome.driver", "D:\\chromedriver.exe");
        WebDriver cd = new ChromeDriver();
        cd.get("https://google.com");

它工作正常,没有错误

而且,浏览器开始最大化,但URL不会发送到浏览器。这很令人困惑。请让我知道如何解决这个问题。这在一段时间前对我有效(大约一个小时左右…),但现在不是。错误被抛出到WebDriver cd = new ChromeDriver(options);

请让我知道我什么时候出了问题,我怎样才能解决这个问题

谢谢


共 (1) 个答案

  1. # 1 楼答案

    根据问题中的注释,这似乎与用户数据目录有关。当wr在打开的chrome浏览器上执行某些操作时,文件夹中的一些文件正在更新并被使用。因此,当你指向文件夹后试图启动chrome时,chrome崩溃。如果要在文件夹中使用某些扩展名,可以复制文件夹并将其指向副本