Released Selenide 4.11.3

Released Selenide 4.11.3

Verify CSS

We released Selenide 4.11.3. Let’s see what updates it contains:

You can now get access to proxy server

As you know, Selenide starts a built-in proxy server (BrowserMobProxy). But until now, you could not use it because it was private. Selenide used it only for downloading files.

Now we added a public method which allows you to get the BrowserMobProxy instance and use as you wish:

BrowserMobProxy bmp = WebDriverRunner.getSelenideProxy().getProxy();

Please tell us in comments how you are going to use it!

P.S. Selenide still starts proxy server only when Configuration.fileDownload=PROXY. Probably we will break this dependency in next version.

Thanks to Aliaksandr Rasolka for PR 731

We added condition cssValue

Now you can check CSS properties of elements:

$("input").shouldHave(cssValue("font-size", "12"));

See issue 628 - thanks to Aliaksandr Rasolka for PR 727

Attention! Use this check with caution. Such checks can make your tests too fragile. You don’t want to have tests that fail often just because of minor design tunings, right?

And remember that Selenium method getCssValue can return different results for different browsers. For example, you cannot just write a universal check for all browsers: $("input").shouldHave(cssValue("color", "#000000")), because

  • For Chrome, it is rgb(0, 0, 0)
  • For Firefox, it is rgba(0, 0, 0, 0)

We removed wrong dependency logback-classic

As you probably remember, in previous Selenide version there was introduces an extra dependency WebDriverManager -> logback, and we recommended to exclude it in your build script.

Now you can remove these lines:

  exclude group: "ch.qos.logback", module: "logback-classic"

Removed duplicate screenshots

Starting from version 4.11.0 Selenide created duplicate screenshots in some cases. Now we fixed it.

See issue 729 - thanks to Boris Osipov for PR 730

Implemented using of browserBinary setting in case of remote browser

Starting from version 4.9, Selenide has a setting for browser binary path - Configuration.browserBinary. But it was used only for local browser.

Now Selenide also uses this setting for remote browser.

See issue 725 - thanks to Alexei Vinogradov for PR 726


Stay tuned!

Andrei Solntsev