【问题标题】:Selenium Chromedriver Starts Hidden and Version CompatibilitySelenium Chromedriver 启动隐藏和版本兼容性
【发布时间】:2016-11-08 17:20:04
【问题描述】:

我正在尝试在 Chrome 浏览器上执行 Selenium 测试用例。当我在 Chrome 上运行测试用例时,Chrome 浏览器打开(在后台)并且测试用例按预期运行。问题是,在运行测试用例时,Chrome 浏览器没有显示为活动窗口,下面是我在控制台中得到的文本:

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

使用的版本: Chrome浏览器:51.0.2704.103, 铬驱动程序:2.22, Selenium 独立服务器: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) 上运行良好。 如果我做错了什么或者我必须更改我正在使用的版本,请告诉我。提前致谢!!

【问题讨论】:

  • 如果您使用的是new ChromeDriver(),那么您没有使用 selenium 独立服务器来运行您的测试。
  • 我认为与其说 selenium 独立服务器,不如说 selenium webdriver ...如果我错了,请纠正我。如果是 selenium webdriver,请您帮助我了解发生了什么错误。
  • @ankit 我不明白这个问题。它打开浏览器,测试按预期运行。您还期望发生什么?
  • @RamcoW:问题是它正在打开 chrome 浏览器,但在运行测试用例时没有使其处于活动状态。在我没有明确单击浏览器图标使其可见之前,我无法看到浏览器中发生了什么。希望它能解决问题。
  • 您确定它不只是因为您在计算机上工作并单击某处而进入后台吗?

标签: google-chrome selenium selenium-webdriver selenium-chromedriver


【解决方案1】:

让我们把一些事情弄清楚:

  1. 如果您想检查您的 chromedriver 和 Chrome 的兼容性,您可以阅读最新的 chromedriver 的notes。
  2. 你不需要 selenium-server 之间的兼容性,因为你没有使用它,你使用的是本地 chromedriver,它与 Chrome 版本而不是 Selenium jar 更相关。
  3. 您发布的控制台输出很好,这是启动 chromedriver 的预期日志。

    正在启动 ChromeDriver 2.22...

您在 cmets (-Dwindow.hide=false) 中添加的另一个解决方案可能是使用 chromedriver 的 DesiredCapabilities 或 ChromeOptions 中的属性:

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

您可以使用这些选项执行much more。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-15
    • 1970-01-01
    • 2015-12-27
    • 1970-01-01
    • 1970-01-01
    • 2019-04-09
    • 1970-01-01
    • 2019-08-27
    相关资源
    最近更新 更多