Selenium ChromeDriver开始隐藏并兼容版本



我正在尝试在Chrome浏览器上执行硒测试用例。当我在Chrome上运行测试用例时,(在后台)打开了Chrome浏览器,并且测试用例按预期运行。问题是,在运行测试用例时,Chrome浏览器并未作为活动窗口出现,下面是我在控制台中获得的文本:

Starting ChromeDriver 2.22.397929 (fb72fb249a903a0b1041ea71eb4c8b3fa0d9be5a) on port 28568
Only local connections are allowed.

使用的版本:Chrome浏览器:51.0.2704.103,Chromedriver:2.22,硒独立服务器:2.53.0,IDE:Mac上的Intellij

以下是我用于Chrome浏览器的代码:

case "Chrome": {
                System.setProperty("webdriver.chrome.driver", "src/main/resources/chromedriver");
                driver = new ChromeDriver();
                driver.manage().window().maximize();
                break;
            }

以下是pom.xml详细信息:

<dependencies>
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-firefox-driver</artifactId>
        <version>2.53.0</version>
    </dependency>
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>2.53.0</version>
    </dependency>
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-chrome-driver</artifactId>
        <version>2.53.0</version>
    </dependency>
</dependencies>

相同的测试用例在Firefox(43.0)上工作正常。请让我知道我是否做错了什么,或者我必须更改正在使用的版本。预先感谢!

让我们保持一些直截了当:

  1. 如果您想检查Chromedriver和Chrome的兼容性
  2. 您不需要硒服务器之间的兼容性,因为您不使用它,您正在使用本地Chromedriver,它与Chrome版本更相关,而不是与Selenium Jar有关。
  3. 您发布的控制台输出很好,这是启动Chromedriver的预期日志。

    开始Chromedriver 2.22 ...

您在评论中添加的内容(-Dwindow.hide=false)可能是在Chromedriver的所需障碍或Chromeoptions中使用属性:

ChromeOptions options = new ChromeOptions();
options.addArguments("start-maximized");
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
capabilities.setCapability(ChromeOptions.CAPABILITY, chromeOptions);
WebDriver driver = new ChromeDriver(capabilities);

您可以对这些选项做更多的事情。

最新更新