Getting Started with Selenium IDE

Learn what is Selenium IDE, its benefits and limitations and how to install and use it effectively with tools like BrowserStack.

Get Started free
Getting Started with Selenium IDE
Home Guide Getting Started with Selenium IDE

Getting Started with Selenium IDE

Selenium IDE is an open-source tool for automating web application testing. It has a simple interface and robust functionalities, making it a good option for those new to automation testing.

Overview

What is Selenium IDE

Selenium IDE (Integrated Development Environment) is primarily an intuitive record/run tool from the Selenium Test Suite that a test case developer uses to develop Selenium Test cases.

Benefits of Using Selenium IDE

  • Automatic test case recording
  • Flexible test execution
  • Intuitive Selenese commands
  • Seamless debugging
  • Reusable test cases
  • Multiple locators for successful execution
  • In this guide

In this guide, learn what is Selenium IDE, it benefits and limitations and how to install and use it effectively.

What is Selenium IDE?

Selenium IDE (Integrated Development Environment) is primarily a record/run tool that a test case developer uses to develop Selenium Test cases. Selenium IDE is an easy-to-use tool from the Selenium Test Suite and can even be used by someone new to developing automated test cases for their web applications. One does not require any special setup to get started with Selenium IDE. You just need to add the extension of your specific browser. Selenium IDE provides you with a GUI (Graphical User Interface) for easily recording your interactions with the website.

Selenium IDE allows a user or a test case developer to create the test cases and test suites and edit it later as per their requirements. The development environment also provides the capability of converting test cases to different programming languages, which makes it easier for the user and does not mandate the need for knowing a specific programming language.

Note: The most interesting part is that earlier Selenium IDE was available only for Firefox users. But now, with the recent version upgrade (3.17.0) on 17th March 2020, the Selenium community introduced a Selenium IDE Chrome Add-on, where-in the same integrated development environment in Firefox, is also made available for Chrome users as well.

After entering the base URL for the project, the recording begins, and all the interactions with the website are recorded and categorized into three main categories as shown in the above Screenshot:

  • Command
  • Target
  • Value

Features of Selenium IDE

There are several features provided in the IDE under the toolbar, using which one can control the execution of test cases:

Selenium IDE Features

  • Speed Control
  • Run All
  • Run
  • Pause/Resume
  • Step
  • Rollup

  1. Speed Control – Helps control the speed of test cases
  2. Run All – Allows execution of the entire Test Suite
  3. Run – Runs the currently selected test
  4. Pause/Resume – Allows a user to pause and resume a particular test case
  5. Step – Helps step into each specific command in the test script
  6. Rollup – Helps group all the Selenese Commands together and make them execute as a single operation

The features keep on getting eliminated or added depending on the usage of different versions of Selenium IDE extensions.

Run Selenium Tests for Free

Benefits of Using Selenium IDE

Here are some of the benefits that come with using Selenium IDE:

  • Automatic test case recording: Provides you the capability of automatically recording your test cases based upon the interactions with the browser
  • Flexible test execution: Gives developers greater flexibility in executing the test cases. Either the test developer can run the entire test suite consisting of multiple test cases or execute a single test case
  • Intuitive Selenese commands: Operates on the basis of the rich set of Selenese commands, which helps the IDE understand what needs to be done
  • Debugging Support: Allows the test developers to set breakpoints for the purpose of debugging particular test cases
  • Reusable Test Cases: Test cases can be re-used using the run command. (e.g. allowing you to re-use the logic of login or reload on multiple places in the entire suite)
  • Multiple locators: The Use of multiple-locators for each element in the IDE ensures successful execution

What is Selenese?

Selenese is the language used to write Selenium Commands. These Selenese commands are then used to test web-applications. Based on the HTML tags of the UI elements, one can check their existence. Commands help Selenium understand what actions or operations to perform.

Classification of Selenium Commands

Selenium commands are mainly categorized into three types:

  • Actions – Help manipulate or change the state of applications (e.g. click on some link or select an option from a page).
  • Accessors – Enable verification and storage of the application state (e.g. consider command “storeTextPresent” – if the text is found on the page, then it stores True else stores false).
  • Assertions – Help compare expected and actual results. They act like checkpoints and if both the values are equal, only then the test case passes or else it fails. Thus, Assertions help verify whether the state of the application after executing the test case conforms to the desired state (e.g. VerifyText, waitForPageToLoad).

Assertions have three modes:

  • Assert
  • Verify
  • WaitFor

Limitations of Selenium IDE

Following are the limitations of Selenium that you should take note of:

  • Not suitable for testing extensive data
  • Connections with the database can not be tested
  • Cannot handle the dynamic part of web-based applications
  • Does not support capturing of screenshots on test failures
  • No feature available for generating result reports

Learn About Selenium in Detail

How to Install Selenium IDE

Selenium IDE does not require any additional setup except adding the browser extension. Here are the steps to install Selenium IDE.

Selenium IDE browser extension on Firefox:

  1. Open Firefox browser and navigate to https://addons.mozilla.org/en-US/firefox/addon/selenium-ide/.
  2. Click on the “Add to Firefox” button which will open a pop up. Then click on the “Add” button.

    Downloading Selenium IDE for Firefox

    Installing Selenium IDE for Firefox

  3. Once the installation is complete, a pop up would be displayed saying Selenium IDE was added. Click on the “Okay” button. Configuring Selenium IDE for Firefox
  4. Selenium IDE plugin should be visible now on top of the browser. Click on it to open Selenium IDE.

Selenium IDE for Firefox

How to use Selenium IDE

Once the Selenium IDE is setup on the respective browser, i.e Chrome or Firefox, it is time to see how to record and playback scripts in the IDE. Here, the BStackDemo application will be used to test the checkout process.

  1. Record the checkout process on the BStack Demo application.
  2. Save the test suite.
  3. Play back the script
  4. Export test script.

BrowserStack Automate Banner

Record process in Selenium IDE

Step 1: Open Chrome/ Firefox browser and click on the Selenium plugin present at the top right corner of the browser to open Selenium IDE.

New Test Project in Selenium IDE

Step 2: Click on Create a new Project.

Step 3: Add the project name and click on the “OK” button.

Step 4: Rename Untitled test case to any appropriate test case name.

Create New Test Case in Selenium IDE

Rename a New TestCase in Selenium IDE

Step 5: Click on the Record button at the top right corner of IDE to start recording the steps.

Recording Test Steps using Selenium IDE

Testing UX using Selenium IDE

It opens the above pop up as the project is created for the first time.

Step 6: Enter base URL as https://bstackdemo.com/ and click on the “Start Recording” button. And this opens the URL on the browser.

Selenium IDE Example

Step 7: On BStackDemo page, perform the following steps for recording:
a. Filter Order by to “Lowest to highest”.
b. Click on Samsung model.
c. Click “Add to cart” for the first item.
d. Click on the “Checkout” button.

Step 8: Go to IDE and click on the Record button to stop the recording.

Record Session using Selenium IDE

Step 9: All the steps are captured and executed after the recording is stopped. Save the project on the system by clicking on the Save button at the top right corner of the IDE. (It is saved in .side format)

Talk to an Expert

Playback process in Selenium IDE

  1. Click on the “Run current test“ button on Selenium IDE to execute the recorded script.

    Playback and Record in Selenium IDE

  2. It executes the same steps recorded previously and gives a result as Pass if all the steps are performed correctly. In case it is unable to interact with any element during playback, the execution fails.
  3. Logs are captured for each step along with the time taken to execute each step.

    Test Log for Selenium IDE

Export the TestCase using Selenium IDE

Testcase can be exported in different programming languages from Selenium IDE by following below steps:

  1. Click on the “Export” button for the test case recorded.

    Export TestCase in Selenium IDE

  2. This opens a popup to Select language. Choose any preferred language. (for eg: Java JUnit) and click on the “Export” button.

    Choose Language to export Test Case in Selenium IDE

  3. Save the file in the local system and later open the file using Notepad or any supported editor to verify the test script.

    Exporting Test Case using Selenium IDE

Conclusion

Selenium IDE is one of the most accessible record and play tools in the Selenium Tool Suite, which requires no particular setup. Selenium IDE has add-ons for Firefox and Chrome browsers. Selenium IDE comes with a rich set of commands that are powered by Selenese, and it allows you to record and test different interactions of a web application with the browser. There are also limitations that should be kept in mind before choosing the Selenium IDE.

Useful Resources for Automation Testing in Selenium

Methods, Classes, and Commands

Configuration

XPath

Locators and Selectors

Waits in Selenium

Frameworks in Selenium

Miscellaneous

Best Practices, Tips and Tricks

Design Patterns in Selenium: Page Object Model and Page Factory

Action Class

TestNG and Selenium

JUnit and Selenium

Use Cases

Types of Testing with Selenium

Tags
Automation Testing Selenium Selenium Webdriver