SDET Unicorns

Selenide Tutorial Series

Table of Content

Hello everyone! In this tutorial series, we will talk about Selenide and learn how Selenide makes it extremely easy to write readable and stable UI tests in Java.

What is Selenide?

Selenide is a UI test automation framework in Java. It’s built on top of Selenium Webdriver, what that means is that you can take advantage of all the low-level features of Selenium Webdriver and on top of that Selenide provides you with added features & functionalities. Selenide is built specifically for automated testing unlike Selenium Webdriver.

  • Readable Code: You can write Readable user friendly code that everyone can understand.
  • Stable Tests: Selenide also provides in-built functionality to write stable tests
  • Config: Selenide requires minimal Setup & Configuration to get started, you can start writing tests in under 15 mins
  • Free: Its free and open source just like Selenium Webdriver

Check out this video to learn more about Selenide in detail:


Selenide Features

  • Finding Elements: finding elements with Selenide is really easy, you can just do $ or $$ to find elements and this is exactly how WebdriverIO find elements as well. So you no longer need to do driver.findElement and so on..
  • Smart Waits: Selenide also has smart waits, this is how it makes your tests stable. For each element, it will wait upto 4 secs to make sure the element is visible and intractable.
    • It also provides various wait methods which you can use such as should be visible, should disappear and so on..
  • Convenient methods: Selenide provides additional convenient methods to make your day-to-day automation easy such as selectRadio, selectOption and many more..
  • Chainable Commands: One of the ways it makes tests readable is through chainable commands, each command can be chained with other instead of having to write it in a separate line each time
  • Additional Locator Strategies: Selenide also provides with more locator strategies. You can findElement bytext, byValue and in few other ways..
  • Automatic Screenshots: It also has inbuilt capability of taking automatic screenshots on test failures without having to do any configuration for it

What we will cover in this series:

  • Setup & Configuration: Start with setting and configuring Selenide on our machine and you will see how easy that would be.
  • Write Tests: Then we are going to write our first test using the TestNG framework and understand the basics of Selenide
  • Selenide API: Then we will move on familiarizing ourselves with Selenide API
    • We will learn how to work with individual and multiple elements and also how to work with input fields
    • We will also cover how to upload files with Selenide and look into various wait commands that Selenide provides
  • Page Object Model: We will take a look at POM as well and notice how easy setting POM is with Selenide
  • Cross Browser Testing: We are also going to look into how to run tests in Chrome & Firefox with Selenide
  • Reporting: And, finally, how to generate beautiful SureFire reports

That’s what I am planning to cover so far in this series. Let me know in the comments below if you would like me to cover any other specific topic. I am really excited to start this series and I hope you guys are as well!

My Resources

Thrive Suite: The all-in-one WordPress theme I used to create my blog.
Jasper AI: My favorite AI writing tool.
Surfer SEO:  A tool to help you rank your content on the first page of Google.

Write Content Faster

5/5

Write blog posts that rank for affiliate terms!

Join our mailing list

Unlock the Secrets to Becoming a SDET Pro in the Industry!

Stay ahead of the curve! Join our mailing list for exclusive insights, tips, and the latest industry updates delivered straight to your inbox

Table of Content

Related Post

7 Principles of Software Testing

7 Principles of Software Testing with Examples

Software testing plays a crucial role in the software development life cycle as it helps ensure the quality, reliability, and performance of the final product. Software testing is not just about finding defects; it also provides valuable insights into the overall quality of the software. By conducting effective software testing, it shows how well the application behaves in different scenarios and whether it meets user expectations.

Read More »
Differences Between CI/CD and DevOps

Key Differences Between CI/CD and DevOps

Software development is far from a simple journey that involves merely executing code and launching applications. It often presents challenges, as it’s rare to get everything right from the start. Each time you implement new or frequent code changes, you inadvertently introduce potential issues that can be time-consuming to resolve. This complexity necessitates a structured approach to ensure smooth production.

Read More »