What is Selenium - A Simple Guide for Begginers

At present, if you want to conduct web automation testing, the preferred tool is basically selenium, then what is selenium?

What is selenium Selenium is a collection of acceptance testing tools based on WEB applications? It runs directly in the browser and simulates user operations through a series of commands. Selenium can convert these commands into actual HTTP requests to run in the browser.

The naming of Selenium is more interesting. At that time, QTP mercury was the mainstream commercial automation tool. It was the chemical element mercury (commonly known as mercury), while Selenium was an open source automation tool that was the chemical element selenium. Selenium could fight mercury.

Selenium provides a replay tool for writing tests without learning the test scripting language. It consists of various components with specific role help. You may have heard of:

  • Selenium RC (RC for remote control)
  • Selenium IDE (IDE for Integrated Development Environment)
  • Selenium WebDriver
  • Selenium Grid

Selenium RC is a storm because it allows developers to control the browser using the software language of the user’s choice! You can use Selenium for codeless processing, or you can fall into the test automation problems brought by Selenium. Wait where did that come from?

Advantages of using Selenium

Finally, it’s time to discuss how the many excellent testing tools that appear on the market every year keep the old Selenium in good condition.

+ Free

Selenium is not the only automated testing tool on the market, but the only free tool that can compete with paid products. As you may have seen in the comparison of automated testing tools, Katalon Studio is the only viable option, but it does not provide too many language options, does not work on Linux, and has no supporters at all. Selenium’s open source status makes tools with a steep learning curve a low entry point for startups and independent developers. Not surprisingly, while Selenium is still holding on, even larger companies will not rush to the paid option and give away thousands of dollars in repair costs.

+Integrated with Agile, DevOps, Continuous Delivery Workflow

Before these words were put into practice, Selenium followed the narrative of Agile and DevOps. The overall nature of selenium is entirely the main principle behind Agile, DevOps or Continuous Delivery. How is this achieved?

  • Because it can be ported across all platforms and usually does not require learning a new language, Selenium provides unparalleled flexibility
  • Selenium can be easily integrated with various development platforms, such as Jenkins, Maven, TestNG, QMetry, SauceLabs, etc.
  • Using Selenium Grid for parallel testing allows developers to receive feedback faster and make changes immediately, instead of waiting for the test to pass all night.

+ Support Mobile Testing

With Selenium, you can also test native, hybrid or web mobile applications, although you need other software. There are two main options- Appium and Selendroid. They are all based on Selenium, so developers who are already proficient in Selenium can apply the same principles when testing mobile applications.

Both tools are open source and have strong community support. The main difference is that Appium supports iOS, Android and Windows devices, while Selendroid only focuses on Android. Selendroid is also bundled with Appium, so when you test Android 2.3 to 4.3 versions, the program will automatically switch to Selendroid.

It seems that using Appium is a more logical choice, because it does not limit you to one operating system. However, if you plan to test Android specifically, it makes more sense to just use Selendroid. It also has some beautiful features, such as “hot plugging”-you can plug in devices and unplug them without interrupting testing, thus increasing the number of emulators or hardware devices that can be tested simultaneously.

You may also want to learn about two other niche tools:

  • Robotium- Black box testing framework for Android
  • iOS-driver —Selenium WebDriver API for iOS testing integrated with Selenium Grid

+ Widely supported languages, platforms and browsers

The flexibility provided by Selenium is almost unparalleled in the field of test automation. First of all, we have ten supported languages, including Java, Ruby, C#, PHP, JavaScript, Perl and R, all of which are the most commonly used programming languages today. It is also the only mainstream tool covering Linux testing. For a detailed list of supported browser versions and an updated list, please refer to this page.

What is Selenium?

Selenium is one of the most popular Open Source Web UI (User Interface) automation testing suites, developed by Jason Huggins in 2004 as an internal tool at Thought Works. This automated testing framework validates web applications across multiple browsers and platforms. Various programming languages like Java,Python, PHP, Ruby, C#, etc., are used for creating Selenium Test Scripts and deployed on platforms like Windows, Linux, or Mac.

Selenium only tests web applications; we can neither test any mobile application or desktop application using Selenium. Also, note that Mozilla Firefox is Selenium WebDriver’s default browser. This automation testing framework integrates with other automation test tools such as Jenkins, Docker, Maven, etc., for achieving continuous testing. Also, it integrates with JUnit and TestNG to manage test cases and generate reports.

To Know More About Selenium you can refer https://mindmajix.com/what-is-selenium