Released Selenide 4.7

Released Selenide 4.7

Embedded WebdriverManager. You'll live the life now!
30.09.17

Good evening!

We released Selenide 4.7 with the most wanted feature of the year. You’ll live the life now!


Embedded WebDriverManager

Now Selenide contains WebDriverManager - a library that can automatically download latest webdriver binary file. You don’t need to care about downloading geckodriver.exe or chromedriver.exe and adding it to PATH. Selenide will take care about it.

There is one nuance. WebDriverManager will only work if:

  1. You use one of supported webdrivers: chrome, edge, internet explorer, opera, phantomjs, marionette or gecko.
  2. Your code hasn’t set system property webdriver.chrome.driver, webdriver.edge.driver, webdriver.ie.driver, webdriver.opera.driver, phantomjs.binary.path or webdriver.gecko.driver.

If you use another webdriver (or a custom WebDriverProvider), WebDriverManager will not be used, and you will continue working as previously.

If you still have some question, remember that the only true information source is the SOURCE CODE!

Thanks to Sergey Pirogov and Boris Osipov for pull request 610.

See also issue 133 and 418

Added method prompt()

As you probably know, there is 3 native modal dialogs in JavaScript: alert, confirm and prompt. Selenide supported alert and confirm from the very beginning, but not prompt.

Now it’s supported too:

  @Test
  public void canSubmitPromptDialog() {
    $("#login").click();
    prompt("Please input your username", "Aegon Targaryen");
    prompt("Please input your password", "qwerty");
    $("#message").shouldHave(text("Hello, Aegon Targaryen!"));
  }

Thanks to Anton Aftakhov for PR 591


Added path for html file to Selenide error message

One of the most convenient feature of Selenide is automatic taking of screenshot in case of error. When a test fails, Selenide takes a screenshot and adds its path to the error message. It’s incredibly convenient to read test report and open a screenshot with just one click. And you don’t even need to install any software like Thucydides, Allure, Report Portal etc. to have it. The most simple things are the most stable.

But there is one more less-known feature.

In addition to screenshot, Selenide also save a html source code of the page where error happened. Now we also added path to this file to Selenide error message.

Thanks to hyunil-shin for PR 590.

Now Selenide error message will look like this:

Element should have text 'Goodbye, Aegon Targaryen!' {#message}
Element: '<div id="message">Hello, Aegon Targaryen!</div>'

Screenshot: file:/.../build/reports/.../canSubmitPromptDialog/1507061177250.0.png
Page source: file:/.../build/reports/.../canSubmitPromptDialog/1507061177250.0.html
Timeout: 4 s.


Fixed concurrency issue with screenshots during parallel test run

We fixed an old concurrency issue 570 with screenshots.

Thanks to Jane Riabchenko for PR 595


Upgraded to selenium-java 3.5.3

We noticed that that selenium-java released version 3.6.0, and we are going to start using it in Selenide 4.8 which is going to be released soon.

Upgraded to browsermob-core 2.1.5 (and littleproxy 1.1.0-beta-bmp-17)

It can only affect you if you download files via proxy server.

Upgraded htmlunit from 2.24 to 2.27

Thanks to Alexander Kotlyar for PR 609.

News

Welcome to the Heisenbug conference in Moscow - 8-9.12.2017

I will present 2 talks on it:

Welcome to Russia!


Andrei Solntsev

selenide.org

30.09.17