/selenide

Concise UI Tests with Java!

Primary LanguageJavaMIT LicenseMIT

Selenide = UI Testing Framework powered by Selenium WebDriver

Build Status Maven Central Sonar Quality Gate Sonar Coverage MIT License Free

Join the chat at https://gitter.im/codeborne/selenide Присоединяйся к чату https://gitter.im/codeborne/selenide-ru Follow Slack chat Слак чат Telegram чат

What is Selenide?

Selenide is a framework for writing easy-to-read and easy-to-maintain automated tests in Java. It defines concise fluent API, natural language assertions and does some magic for ajax-based applications to let you focus entirely on the business logic of your tests.

Selenide is based on and is compatible to Selenium WebDriver 2.0 and 3.0

@Test
public void testLogin() {
  open("/login");
  $(By.name("user.name")).setValue("johny");
  $("#submit").click();
  $("#username").shouldHave(text("Hello, Johny!"));
}

Look for detailed comparison of Selenide and Selenium WebDriver API.

Changelog

Here is CHANGELOG

How to start?

Just put selenide.jar to your project and import the following methods: import static com.codeborne.selenide.Selenide.*;

Look for Quick Start for details.

Resources

FAQ

See Frequently asked questions

Posts

  • Set-up environment with gradle, junit5, allure and selenide -- read a post on medium, grab from github
  • Small step do dramatically improve your tests speed -- read a post on medium
  • Another way to improve tests speed -- read a post on medium

How to build Selenide?

git clone https://github.com/selenide/selenide.git
cd selenide
./gradlew jar

After build you'll find Selenide's .jar file under build/libs/ directory.

To build Selenide on Windows use gradlew.bat jar command.

Feel free to fork, clone, build, run tests and contribute pull requests for Selenide!

Run test locally inside docker containers

  • Syncing browser images from existing configuration file
    • Install jq
    • Extract image names from JSON and automatically pull them:

      cat /config/selenoid/browsers.json | jq -r '..|.image?|strings' | xargs -I{} docker pull {}

  • Start selenoid container
    • Install docker
    • Based on your operation system execute script. Check official document for correct script.
  • Start tests passing selenide.remote configuration variable with http://localhost:4444/wd/hub value

Authors

Selenide was originally designed and developed by Andrei Solntsev in 2011-2015.

Thanks

Many thanks to these incredible tools that help us creating open-source software:

Intellij IDEA YourKit Java profiler BrowserStack

License

Selenide is open-source project, and distributed under the MIT license